ES6中箭頭函式的作用

2021-08-25 05:19:26 字數 590 閱讀 1499

那為什麼在es6中引入了箭頭函式呢? 最主要的目的就是解決this指標的問題。

我們知道在es6中,我們可以建立乙個class,如果我們預設在其裡面加入乙個函式的話,其必須在呼叫的時候,必須繫結this指標,否則不能訪問當前類的例項裡面的屬性。下面舉乙個具體的例子,為什麼其能解決this指標的問題。

比如下面乙個乙個person類:

function person() , 1000);

}var p = new person();

在ecmascript 3/5中, 這個this的指標問題可以通過顯示的制定this到乙個變數,從而把person()構造器生成的例項this指標,引入到函式中,具體寫完如下:

function person() , 1000);

}

這種寫完有點囉嗦和繁雜,那麼有沒有更為簡潔的方式呢?直到es6出現了箭頭函式,才徹底的解決這個問題。下面讓我們看看es6的箭頭函式如何寫的。

unction person(), 1000);

}var p = new person();

來自:

ES6中箭頭函式中的this指向

箭頭函式的this指向與一般的function函式定義不同 箭頭函式的this定義 是在定義函式的時候繫結,而不是在執行的時候繫結 何為執行時繫結 來看下面的例子 let a 1 let obj obj.sayhi 輸出的是2一般的定義函式執行的時候決定this的執行,我們不難看出obj.say 的...

ES6中箭頭函式this指向的問題

箭頭函式在es6中用的很常見,剛開始我還覺得這有什麼,就是簡寫了一下而已 後來用習慣之後就覺得是真滴方便 在說之前先簡單的概括一下。箭頭函式和普通函式的區別如下。普通函式 根據呼叫我的人 誰呼叫我,我的this就指向誰 箭頭函式 根據所在的環境 我再哪個環境中,this就指向誰 先來看乙個簡單的例子...

ES6中箭頭函式學習總結

先來看看普通的函式是怎麼定義的 通過物件字面量定義函式 再來看看es6中箭頭函式的定義 現在知道了箭頭函式和普通函式的差別,接下來分析其引數和返回值與普通函式的差異。引數問題 傳入乙個引數的寫法 返回值問題 函式體中只有1行 時 現在再來看看在標籤中箭頭函式與普通函式this的返回值 看看在物件中箭...