2015-10-11 63 views
0

代碼示例:的Javascript 「=>」 語法意義

function unusedDigits(...args){ 
    return [0,1,2,3,4,5,6,7,8,9].filter(o => args.join("").indexOf(o) === -1).join("") 
} 

一切都清楚了這裏。 Exept =>。這在javascript中意味着什麼?

+1

箭頭函數表達式(也稱爲脂肪箭頭功能)具有較短的語法相比函數表達式和詞法結合此值。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions –

+0

這是新功能的ES6(EcmaScript 6,新即將推出的Javascript版本)語法,稱爲箭頭函數,這在功能編程中特別有用。 就在上個月,我寫了一篇關於它們如何工作的文章: https://www.airpair.com/javascript/posts/mastering-es6-higher-order-functions-for-arrays#es6-arrow-notation -101 –

+0

奇怪。即使現在我也無法使用搜索找到這個問題。 stackoverflow是否理解'=>'?同樣,我無法在谷歌中找到它。或者有沒有找到這種符號的方法? – FreeLightman

回答

2

這是一個ES6箭頭函數,它是函數表達式的簡短語法。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions

所以:

// ES5 
var selected = [0,1,2,3,4,5,6,7,8,9].filter(function (o) { 
    return args.join("").indexOf(o) === -1; 
}); 

// ES6 
var selected = [0,1,2,3,4,5,6,7,8,9].filter(o => args.join("").indexOf(o) === -1); 
+0

箭頭函數不僅是一個「短語法」。綁定'this'並且沒有[[Construct]]方法。 – Oriol

+0

我知道,我在帖子中提供了進一步閱讀的鏈接 – UserNeD