關於JavaScript的箭頭函式

2021-08-19 19:49:00 字數 482 閱讀 3933

箭頭函式是乙個簡寫形式的函式表示式,並且它擁有詞法形式的this值

基本用法:

var f=v =>v   這個函式等同於    var f =function(v)

var sum=(num1,num2)=>num1+num2 等同於  var sum=function(num1,num2))=>first+" "+last;

等同於 function full(person){

return person.first+" "+person.last

使用箭頭函式注意幾點:

1.函式體內的this物件就是定義時所在的物件,而不是使用時所在物件

2.不可以當做建構函式使用,也就是不能用new命令例項化乙個物件,否則會丟擲乙個錯誤

3.不可以使用arguments物件,該物件在函式體內不存在,如果要用的話,可以使用rest引數代替

4.不可以使用yield命令,箭頭函式不能用作generator函式

JavaScript 箭頭函式與普通函式的區別

箭頭函式除了在寫法上與傳統的function不同外,最主要的區別在於this的指向 箭頭函式的this基於詞法作用域,而普通函式的this基於上下文。通俗講就是箭頭函式的this一直指向編輯該函式時的作用域,而普通函式的this指向要基於呼叫它的上下文,看下面例項可能更容易理解 定義乙個全域性變數c...

關於箭頭函式

一 為什麼存在 const person 1000 person.sayhello 因為setinterval執行的時候,是在全域性作用域下的,所有this指向的是全域性window,而window上沒有name和age,所以輸出的是undefined。通常的寫法是快取this,然後在setinte...

深入理解JavaScript箭頭函式

箭頭函式就是個簡寫形式的函式表示式 並且它擁有詞法作用域的this 值 即不會新產生自己作用域下的this,arguments super 和new.target 等物件 此外,箭頭函式總是匿名的 語法 基礎語法 param1,param2,paramn param1,param2,paramn e...