JavaScript函式篇之ES6箭頭函式與匿名函式
阿新 • • 發佈:2022-05-23
匿名函式
setTimeout(function() {
console.log("This message is shown after 3 seconds");
}, 3000);
看這樣一段程式碼,我們平常定義一個函式,至少會給他一個函式名。但是,我們這裡的function()
沒有名字。
這也行???
當然可以,我們稱這種函式為匿名函式,顧名思義,沒有名字。
箭頭函式
在ES6
版本中,JavaScript加入了一個新的函式,箭頭函式。
箭頭函式是 JavaScript 裡的一種新的函式形式。
數如其名哈!真就有一個箭頭。
//普通函式 function add(x, y) { return x + y; } //箭頭函式 var add = (x, y) => { return x + y; } //箭頭函式簡寫 var add = (x, y) => x + y;
其實,他出現的目的是為了簡化我們的程式碼。
如果函式只有一個語句,並且該語句返回一個值,則可以去掉括號和 return
關鍵字(即第三局句程式碼)。
事實上,如果只有一個引數,您也可以略過括號(有興趣自行嘗試)。
箭頭函式的this
與常規函式相比,箭頭函式對 this
的處理也有所不同。
簡而言之,使用箭頭函式沒有對 this
的繫結。
在常規函式中,關鍵字 this
表示呼叫該函式的物件,可以是視窗、文件、按鈕或其他任何東西。
對於箭頭函式,this
關鍵字始終表示定義箭頭函式的物件。