2013-12-20 59 views
3

在Mozilla的sample code for Downloads.jsm有几行使用=>我不知道的含义:Mozilla的JavaScript中`=>`是做什么的?

let view = { 
    onDownloadAdded: download => console.log("Added", download), 
    onDownloadChanged: download => console.log("Changed", download), 
    onDownloadRemoved: download => console.log("Removed", download), 
}; 

是什么=>在这里做?

+0

[JavaScript中“=>”的含义是什么意思?](http://stackoverflow.com/q/24900875/1048572) – Bergi

回答

2

它的JavaSctipt的是ECMAScript 6的即将推出的版本语法,又名和谐。

x => expr语法代表或多或少(与this的处理不同),对于function (x) { return expr; }

3

它们是ES6引入的一种特殊的函数文字符号,称为arrow functions。它基本上和咖啡标记一样。

它可能是短写成console.bind(console, "Added") :-)

1

这就是所谓的“箭头函数”或“lambda表达式”。

如果你想使用它而不是等待ECMAScript 6,你可以看看,你不必担心浏览器的兼容性和这种东西。您可以查看an example here