2016-01-13 12 views
0

我一直在閱讀關於Node.js和MQTT的文章。 而我奇怪的語法爲:Node.js中的語法()=> {}是什麼意思

client.on('connect',() => { 
    // do something 
}) 

() => {}的事情,是像function() {}準備回調? 還是它有一些具體的用法?有沒有關於這方面的一些參考?

+0

無關,與'Node.js'的簡寫。這是新的ES6編寫方式(通常是內聯)功能。 –

回答

0

那就是ES6 arrow function syntax。它類似於function() {},以及詞彙綁定this

(param1, param2, …, paramN) => { statements } 
(param1, param2, …, paramN) => expression 
     // equivalent to: => { return expression; } 

// Parentheses are optional when there's only one parameter: 
(singleParam) => { statements } 
singleParam => { statements } 

// A function with no parameters requires parentheses: 
() => { statements } 
1

這對

client.on('connect', function() { 
    // do something 
}); 
+1

除了作爲「速記」之外,還有更多箭頭功能。你忽略了提及它的主要特點。 – Marty