Js前端面試題

2022-03-22 06:06:01 字數 1148 閱讀 9416

1.判斷js型別的方法

1

typof()

2 可以判斷出 string boolean

undefiend number

3 但是判斷typeof(null) 時值為object ,判斷物件陣列的時候也是object

object.prototype.tostring.call() 可以判斷出所有型別

array.isarray()判斷是否為陣列

2.閉包的概念:有權訪問另乙個函式內部的變數

優點:避免全域性變數汙染,希望乙個變數長期儲存在記憶體中

缺點:記憶體洩漏,增加記憶體使用量

function

f1()

}

3.淺拷貝和深拷貝都只針對於引用資料型別

淺拷貝:淺拷貝只複製物件的指標,不複製物件本身

object.assign()實現淺拷貝

深拷貝:使用json.stringify和json。parse()實現深拷貝,缺陷:只能處理number,string

boolean arry ,只有可以轉成json格式物件才可以這樣用,像function就沒辦法了

4.js中值型別,和引用型別

1.值型別:string ,boolean ,number ,null

,undefiend

2.引用型別:function object array

5.es6陣列去重

var  arr = [1,3,3,7.8]

第一種:let res = [...new

set(arr)]

第二種:let arr1 = arr.reduce((initialvalue,currentvalue)=>

return

initialvalue

},)reduce常用來求和

const sum = arr.reduce((arr,curvalue)=>,0)

6.vue.js使用的時單向資料流,雙向繫結,js單向資料流

7.promise 是非同步程式設計的一種解決方案,主要用來解決**地獄的問題,一般情況下配合async/await使用  await後面必須是乙個promise物件

前端面試題 Js

1.原型 原型鏈 建構函式 例項 繼承 原型 proto 原型物件 prototype 用作建構函式中有prototype 原型物件 例項中有 proto 2.有幾種方式可以實現繼承 原型繼承,構造繼承,例項繼承,拷貝繼承,組合繼承,寄生組合繼承,class繼承 3.用原型實現繼承有什麼缺點,如何解...

array 前端面試題 JS陣列的前端面試題

關於陣列的前端面試題 如何判斷乙個變數是否為陣列?為什麼不用 typeof var list 1,2,3 typeof list object array 繼承與object 所以typeof 會直接返回 object 所以不可以用 typeof 方法來檢測 為什麼不用 instanceof?var...

前端面試題 js部分

1 dom操作 怎樣新增 移除 移動 複製 建立和查詢節點?建立新節點 createdocumentframent 建立乙個dom片段 createelement 建立乙個具體的元素 createtextnode 建立乙個文字節點 移除節點 removechild 替換節點 replacechild...