基於TOP-K的面試題解總結(6)
阿新 • • 發佈:2022-04-10
27.Javascript 中 == 與 === 的區別是什麼?
- ==:
- 兩個值型別相同就進行===比較
- 型別不相同,就通過型別轉換之後再進行比較
- ===
- 嚴格相等,不進行型別轉換
- null===null
- undefined===undefined
- 淺拷貝:
- 對於基本資料型別,會拷貝其實際值
- 對於引用型別,會拷貝其地址的索引值,若其他引用變數修改了此地址資料的值,則其他引用該地址的變數也會改變
- 深拷貝:
- 淺拷貝+巢狀輪詢實現
- 對於基本資料直接拷貝其實際數值
- 對於引用型別,會通過地址找到指向的物件再次進行深拷貝
- 柯里化:也叫部分求值,將多引數的方法轉化為只傳遞給函式一部分引數來呼叫它,讓它返回一個新函式去處理剩下的引數的方法
- 逆柯里化:柯里化的逆過程,擴大函式的適用範圍
- 模式不同:
- Vue屬於MVVM模式,即Model、View、ModelView層
- React屬於MVC的view層
- 虛擬DOM不同:
- Vue會跟蹤每一個元件的依賴並精準更新,不需要重新渲染整個元件樹
- React每當應用狀態被改變時,全部元件都會重新渲染
- 元件寫法不同:
- React推薦把元件HTML+CSS寫進JS中
- 資料繫結:
- Vue實現資料雙向繫結
- React資料流動是單向的
- diff演算法不同:
- Vue在相同層採用從兩邊同時進行匹配檢測相同節點
- React仍採用從左到右的檢測演算法