apply()第一個引數是null

antzone發表於2017-04-13

apply方法基本用法參閱JavaScript apply()一章節。

它可以改變指定函式的執行上下文,它的第一個引數用作指定函式的this,看如下程式碼例項:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
function fun() {
  console.log(this);
}
fun.call(5);
fun.call("antzone");
fun.call(true);
fun.call({webName:"螞蟻部落"});

有朋友可能會有這樣的疑問,值型別資料難道也能夠用作this嗎,其實值型別首先會進行裝箱操作,也就是先轉換為對應的物件,當使用console.log()輸出的時候,又將其隱式轉換為字串型別。

當第一個引數是null或者undefined的時候,就要分兩種情況:

(1).非嚴格模式下,this會執行全域性物件。

(2).嚴格模式下,this就是null或者undefined。


相關文章