2016-11-08 2 views
1

мне интересно, в чем разница между анонимной функции:Что такое синтаксис «=>» в nodejs?

callback = function (a) {return a} 

и с помощью «=>» нотации?

callback = (a) => {return a} 

Это что-то большее, чем синтаксический сахар?

+0

Головка стрелки, используемая в качестве синтаксиса на многих языках для разделения параметров функции и реализации функции. –

+1

Различие между ними состоит в том, что второй захватывает «этот» контекст, а другой принимает контекст функции вызывающего абонента. Таким образом, вы можете вызвать вторую функцию без .bind (это), и все же функция сможет использовать this.myvar – Aus

+0

https://strongloop.com/strongblog/an-introduction-to-javascript-es6-arrow-functions/ – 0aslam0

ответ

2

() =>arrow function Javascript, который вводится в ECMA Script 6. Он полезен для более интуитивной обработки текущего контекста объекта.

Reference link для новых возможностей ECMA Script 6.

5

Это называется ES6 жир стрелка синтаксис. Есть разница между ними, жирная стрелка одна автоматически фиксируется это.

-1

Это не имеет ничего общего с Node.js. Node.js - это просто библиотека, библиотеки не могут вводить синтаксис в ECMAScript.

Это стандартная функция стрелки ECMAScript.

Это что-то большее, чем синтаксический сахар?

Да. Функции стрелки имеют лексическую область this.

+2

Node.js - это среда выполнения. Разработчик может ввести новый синтаксис, если захочет. –