原生JS 1 箭頭函式與普通函式的區別

2021-09-11 19:27:15 字數 712 閱讀 9888

1.語法更加簡潔、清晰

2.箭頭函式沒有 prototype (原型),所以箭頭函式本身沒有this

3.箭頭函式不會建立自己的this

箭頭函式沒有自己的this,箭頭函式的this指向在定義(注意:是定義時,不是呼叫時)的時候繼承自外層第乙個普通函式的this。

5.箭頭函式不能作為建構函式使用

6.箭頭函式不繫結arguments,取而代之用rest引數...代替arguments物件,來訪問箭頭函式的引數列表

// 普通函式

function a(a)

a(1,2,3,4,5,8); // [1, 2, 3, 4, 5, 8, callee: ƒ, symbol(symbol.iterator): ƒ]

// 箭頭函式

let b = (b)=>

b(2,92,32,32); // uncaught referenceerror: arguments is not defined

// rest引數...

let c = (...c) =>

c(3,82,32,11323); // [3, 82, 32, 11323]

參考文章:

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

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

箭頭函式與普通函式區別

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

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

1.不繫結this 在箭頭函式出現之前,每個新定義的函式都有其自己的 this 值 var myobject double function myobject.double 希望value乘以2 myobject.getvalue 1在ecmascript5中將this賦給乙個變數來解決 var m...