箭頭函式和普通函式的區別,this的指向問題

2021-08-30 02:06:19 字數 433 閱讀 9883

1.箭頭函式作為匿名函式,不能作為建構函式,不能使用new

var b = ()=>

var b = new b(); //typeerror: b is not a constructor

2.箭頭函式不繫結arguments,取而代之用rest引數…解決

function a(a)

}var b = (b)=>

var c = (...c)=>

a(1);

b(2);

c(3);

3.箭頭函式會捕獲上下文this作為自己的this,this繼承自外圍作用域。在箭頭函式中呼叫 this 時,僅僅是簡單的沿著作用域鏈向上尋找,找到最近的乙個 this 拿來使用。

4.箭頭函式沒有原型屬性。

5.箭頭函式無法換行。

Js普通函式中this和箭頭函式中this

this的意思是 我的 如我的名字叫張三,我的名字叫李四。每個人都可以用 我的 張三說我的,那麼 我的 就代表張三,李四說我的,那麼 我的 就代表李四 var name 張三 function a a 完整寫法,windows.a this指向的是windows物件,列印的為張三 var name ...

箭頭函式中的this和普通函式中的this對比

es6中新增了箭頭函式這種語法,箭頭函式以其簡潔性和方便獲取this的特性。下面來總結一下他們之間的區別 普通函式下的this 箭頭函式中的this 看下面這段 function a a 因為a是乙個全域性函式,也就是掛載在window物件下的,所以a 等價於window.a var obj obj...

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

面試時被問到箭頭函式和普通函式的區別。借用別人的乙個栗子 function make var testfunc make.call testfunc testfunc.call object object可以看到箭頭函式在定義之後,this 就不會發生改變了,無論用什麼樣的方式呼叫它,this 都不...