最近做的項目中遇到了在箭頭函數里使用this時報錯的問題,把箭頭函數的寫法改成function()后,this的指向才達到預期。關於這個問題值得研究一下。 在箭頭函數出現之前的ES5時代,this指向它的調用者。是哪個對象調用了這個屬性或方法,this就指向這個對象。這有 ...
回調函數中,用箭頭函數改變this的作用域 success: res gt this.setData 此時,this指向page頁面 ... 自定義事件中,如果使用箭頭函數,則箭頭函數中的this指向undefined,不指向page onLike: event gt likeModel.like this.data.classic.id 報錯,this指向undefined , 需要修改成傳統 ...
2019-06-22 10:57 0 646 推薦指數:
最近做的項目中遇到了在箭頭函數里使用this時報錯的問題,把箭頭函數的寫法改成function()后,this的指向才達到預期。關於這個問題值得研究一下。 在箭頭函數出現之前的ES5時代,this指向它的調用者。是哪個對象調用了這個屬性或方法,this就指向這個對象。這有 ...
全局環境下,指向windows console.log(this.document === document); // true 函數上下文調用 function f1(){ return this; } f1() === window; // true 對象中 ...
箭頭函數中this的指向問題 箭頭函數不會改變this的指向,在它外面拿到的this是什么,它里面獲取到的就是什么 setTimeout方法掛載在window上面,高程中寫道,超時調用的代碼都是在全局作用域下執行,非嚴格模式下this指向window對象,嚴格模式下為undefined ...
普通函數:this指向分為4種情況,1. obj.getName();//指向obj2.getName();//非嚴格模式下,指向window,嚴格模式下為undefined3. var a = new A(); a();//指向A本身4.getName().apply(obj);//指向 ...
),這里當然是window對象,箭頭函數並沒有自己的this值,它的this繼承自外圍作用域。 ...
對於this的指向問題還是有點不太清除,這里做一下整理,方便以后查看 普通函數的this 1.普通函數的this指向的是它的調用者,誰調用這個this,,this就指向誰,比如obj,fn,這里fn最外層的this就指向obj 2.如果沒有調用者,那這個this就指向window 3. ...
箭頭函數和普通函數的區別如下。 普通函數:根據調用我的人(誰調用我,我的this就指向誰) 箭頭函數:根據所在的環境(我再哪個環境中,this就指向誰) 一針見血式總結: 普通函數中的this: 1. this總是代表它的直接調用者(js的this是執行上下文), 例如 obj.func ...
箭頭函數(=>):函數簡寫 無參數:() => {} 單個參數:x => {} 多個參數:(x, y) => {} 解構參數:({x, y}) => {} 嵌套使用:部署管道機制 this指向固定化 ...