箭頭函式與普通函式的區別

2021-08-27 08:32:20 字數 577 閱讀 5541

箭頭函式和普通函式的區別:

首先就是 箭頭函式作為匿名函式,是不能作為建構函式的

再者就是更重要的一點

箭頭函式的特點就是不繫結this和arguments

舉個例子:

settimeout(function

())},3000)

以上是乙個延時定時器中的普通function

我們都知道定時器中會改變this的指向,所以如果定時器中是普通的function那麼就指向的window。但是這個通常不是我們預期想要的結果

settimeout(()=> )

},3000)

如果定時器中的是乙個箭頭函式的話,其中的this可並非指向window了

箭頭函式會捕獲其所在上下文的 this 值,作為自己的 this 值

arguments也是同理

所以箭頭函式 是乙個匿名函式,並且不繫結this與arguments,在寫法上面也精簡與普通的function

箭頭函式與普通函式區別

1 箭頭函式是匿名函式,不能作為建構函式,不能使用new 2 箭頭函式不繫結arguments,取而代之用rest引數 解決 3 this的作用域不同,箭頭函式不繫結this,會捕獲函式定義的上下文中的this值,作為自己的this值,且一直不變 4 箭頭函式沒有原型物件 5 箭頭函式不能當作gen...

箭頭函式與普通函式的區別

箭頭函式 let fun 普通函式 function fun 箭頭函式相當於匿名函式,並且簡化了函式定義。箭頭函式有兩種格式,一種只包含乙個表示式,連和return都省略掉了。還有一種可以包含多條語句,這時候就不能省略和return。箭頭函式是匿名函式,不能作為建構函式,不能使用newlet fun...

箭頭函式與普通函式的區別

首先在es6中為我們新增了一種新的箭頭函式。箭頭函式在大部分情況下可以替代function使用,減少了一部分的 量,也讓我們的書寫更加流暢。將原有的function關鍵字和函式名都刪掉。並使用 連線引數列表和函式體 function fun index 以上的寫法等於 fun index 當形參數量...