js原聲面試題必會總結

2021-10-06 23:13:49 字數 688 閱讀 7463

概念 : 大函式裡面巢狀小函式 小函式可以使用大函式的變數  就形成了閉包(作用域的產物)

條件 :1 必須有二個函式 並且是巢狀關係

2 在全域性中必須接受返回值

閉包產生的原因 :首先js最大的缺點就是沒有類 尤其是es5 變數和函式都使用在相同空間 就會照成函式和變 量重名 這樣就會產生全域性汙染 然而閉包就能產生密閉空間 形成封閉的空間 這樣就不會造成變數和函式汙染

優點 :1 保證內容更加封閉 命名更加安全

2 形成了封閉空間 更容易模組化開發

3 全域性可以操作區域性變數

4 資料持久化延長了資料的生命週期

概念 :簡單來說 就是我們建立的每乙個函式都會自帶乙個prototype屬性 這個屬性會指向乙個物件 這個物件稱為原型物件· 	 

優點 :1 在記憶體中節省資源,提高系統效能

舉例:這是乙個用原型構造的陣列方法,將求和的sum方法掛在原型上,可以使這個方法被重複使用,當然,重點是節省記憶體資源

2 優先順序

原型的優先順序類似於css中的優先順序,沒有使用原型的建構函式,就好比css中的行內樣式,優先順序高,而與原型掛鉤的屬性和方法 ,就像是style的內聯樣式,優先順序低於行內樣式。所以在呼叫同一種方法名的時候,系統會優先呼叫掛在原型上的方法!

js面試題總結

1 預編譯 script varx 1 y z 0 function add n y add x 2 function add n z add x 問執行完畢後 x,y,z 的值分別是多少?x 1 y undefined z undefined 函式表示式沒有return 所以為undefined ...

js 面試題總結

1.typeof返回資料型別有哪些 number,string,boolean,object,undefined,function 2.強制型別轉換有哪些?隱式型別轉換有哪些?轉換為string tostring 轉換為number number parseint parsefloat 轉換為boo...

js程式設計面試題總結。

function fn function add n function minus n add minus foreach item 另一種寫法 number.prototype.add add number.prototype.minus minus console.log 5 add 3 min...