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...