I want to transform this code:
var formatQuoteAmount = function (tx) {
return Currency.toSmallestSubunit(tx.usd, 'USD');
};
var quoteAmounts = res.transactions.map(formatQuoteAmount);
into an anonymous arrow function. I've written this:
var quoteAmounts = res.transactions.map(tx => Currency.toSmallestSubunit(tx.usd, 'USD'));
I get expression expected
syntax error at the arrow. I looked up the default syntax here and seems like the syntax of my code is correct. Any ideas what the problem might be?
I have it working with this syntax:
var quoteAmounts = res.transactions.map(function (tx) {
return Currency.toSmallestSubunit(tx.usd, 'USD')
});
but I want to make it a one-liner, with an arrow-function.
Running on node v5.3.0
Your syntax is correct and Nodejs supports arrow functions, but you it's not enabled by default.
You should add the "--harmony" flag when you start the node process to enable it.
The following is what i did that work for me. (1) I change the JavaScript language option to ECMAScript 6 as show in the selected answer by @Joe23
(2) I close the Webstorm project/application.
(3) Navigate to the project folder and delete the .idea folder in it. I believe this is the folder webstorm generated to keep information about the project/application.
(4) I reopen my project in webstorm and the errors are gone.
I had the error
expression expected
reported by Webstorm when editing a Node.js program. In this case the solution is to set the language version to a version that supports this feature.