箭頭函式與普通function的區別

2022-03-02 15:41:28 字數 549 閱讀 1166

let obj =

function fn1()

fn1.call(obj);

let fn2() =>

fn2.call(obj);

2. 普通函式的引數是arguments,而箭頭函式是arg

let arr = [1,2,3]

~function()

(arr); //輸出 [1,2,3]

let a = (...arg) =>

a(arr) //輸出[1,2,3]

3. 語法上比普通函式更加簡潔

function fn1(x) }

let fn1 = x => y => x + y;

4. 箭頭函式不能使用new生成建構函式,因為箭頭函式沒有prototype,而construct在prototype裡面。

function fn1()

let f1 = new fn1;

let fn2 = () =>

let f2 = new fn2; //輸出 fn2 is not a constructor

箭頭函式與function的區別

1.箭頭函式與function定義函式的寫法不同 function function fn a,b arrow function var foo a,b 2.this的指向不同 使用function定義的函式,this的指向隨著呼叫環境的變化而變化的,而箭頭函式中的this指向是固定不變的,一直指向...

箭頭函式 與function的區別

1.箭頭函式與function定義函式的寫法 function function fn a,b arrow function var foo a,b 2.this的指向 使用function定義的函式,this的指向隨著呼叫環境的變化而變化,而箭頭函式中的this指向是固定不變的,一直指向定義函式的...

箭頭函式與普通函式區別

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