箭頭函式的this arguments詳解

2022-05-17 15:46:41 字數 566 閱讀 6538

1、箭頭函式沒有自己的this,arguments,super或new.target。

2、它的this、arguments都是在定義函式時繫結外層的this和arguments,而不是在執行過程中繫結的,所以不會因為呼叫者不同而發生變化。

3、箭頭函式若想得到自身的入參列表arguments,必須使用剩餘引數表示法。

4、箭頭函式表示式更適用於那些本來需要匿名函式的地方,並且它不能用作建構函式。

下面我們以arguments為例進行驗證,this同理

var obj ={};

obj.fn = function

() arrow(4,5,6)

}obj.fn(1,2,3)

以下是輸出結果

入參列表 : arguments(3) [1, 2, 3, callee: ƒ, symbol(symbol.iterator): ƒ]

剩餘引數 : (3) [4, 5, 6]

由上述驗證我們可以發現箭頭函式arrow使用arguments獲取入參列表時,實際上得到的是外層函式的arguments。而this也是乙個道理。

箭頭箭頭函式

var fn function a 一樣 jineng function 箭頭函式外面指向誰就指向誰 有function.console.log fn3 1 像函式表示式 this指向不變.不能作為建構函式 不能使用new 返回物件的話.外部用括號 var fn7 name asdfnasd age...

箭頭函式寫法 箭頭函式

1 箭頭函式介紹 es6 let fn v v console.log fn 好酷的箭頭函式!好酷的箭頭函式!es5 let fn function v 和return省略掉 v v v 相當於 function v 和return v 和return時,如果返回的內容是乙個物件,物件需要用括號 括...

箭頭函式及箭頭函式中this的使用

1.定義函式的方式 function const aaa function 3.es6中的箭頭函式 const ccc 引數列表 3.1 有乙個引數 括號可省略 const sum num1 3.2 有兩個引數 const sum num1,num2 3.3 函式 塊中有多行 時 依次寫 const...