1. 程式人生 > 資訊 >Counterpoint:2021 年安卓智慧手機 5G 芯片價格大幅下滑,海思市佔率進一步萎縮

Counterpoint:2021 年安卓智慧手機 5G 芯片價格大幅下滑,海思市佔率進一步萎縮

1.vue是一套構建使用者介面的漸變式mvvm框架,mvvm是將“資料模型資料雙向繫結”的思想作為核心,因此在view和model之間沒有聯絡,通過viewmodel進行互動,在model和viewmodel之間的互動是雙向的,所以資料來源的變化也會立即反應到view上面。

2.vue的生命週期總共分為8個階段,建立前/後、載入前/後、更新前/後、銷燬前/後。 建立前/後:beforeCreate和created 載入前/後:beforeMount和mounted 更新前/後:beforeUpdate和updated 銷燬前/後:beforeDestory和destoryed

3.css2和css3的水平垂直居中 css2:父級元素(垂直居中) display:table-cell vertical-algin:middle 子級元素(水平居中) display:block margin:0 auto css3:display:flex algin-item:center 垂直 justify-content:center 水平

4.閉包:可以讀取函式內部的變數,並且讓這些變數的值始終保持在記憶體中。 function a(){ var n = 0; function inc(){ n++; console.log(n); } return inc; } var c = a(); c(); //控制檯輸出1 c(); //控制檯輸出2

5.webpack是一個模組管理工具,可以用webpack管理模組,最終編譯模組為HTML、Javascript、CSS以及各種靜態檔案。對於不同型別的資源,webpack有對於的模組載入器loader。 優化webpack的構建速度: a.使用高版本的webpack和node.js b.壓縮程式碼、壓縮圖片 c.縮小打包作用域 d.提取公共資源、基礎包分離 e.充分利用快取提升二次構建速度

6.淺拷貝:以賦值的形式拷貝引用物件,修改時原物件也會受到影響。 賦值表示式 = object.assign(obj); 展開運算子 obj.a = 1; 深拷貝:完全拷貝一個新物件,修改時原物件不會受到任何影響。 JSON.parse(JSON.stringify(obj)) 遞迴進行逐一賦值

7.跨域:看協議、域名、埠號三個位置,只要有一處不同,就說明這個請求跨域了。 跨域請求報錯:因為瀏覽器的同源策略,請求的是ajax型別。 解決方案:a.前端用jsonp方式請求(jsonp不是ajax請求) b.用cors請求,在後端新增響應頭,響應回來瀏覽器不會報錯 c.用代理模式來解決跨域,在vue.config.js下配置代理的地址

8.promise是一個建構函式,主要用來封裝非同步操作並獲取其結果。promise變為rejected就會丟擲異常,promise變為resolved,value為返回的值。 async/await是對promise的優化,async是函式,await是表示式,await寫在async中。 優點: async/await能省寫很多程式碼 async/await結構更清晰,更好處理異常 async/await更好除錯程式碼

9.vuex是應用程式開發的狀態管理模式+庫。 a.用於非父子孫關係的元件間傳值。 b.可以把他當成記憶體資料庫用,它有點像cookie、localStorage可以快取到瀏覽器中。 用法: const store = new Vuex.store({ state:{ //存放狀態 } getters:{ //state的計算屬性 } mutations:{ //更改state中的狀態 } actions:{ //提交mutation,非同步操作 } )} 10.vue雙向繫結:vue.js採用資料劫持結合釋出和訂閱者模式的方式,通過Object.defineProperty()來劫持各個屬性的setter和getter,在資料變動時釋出訊息給訂閱者,出發相應的監聽回撥。