Does node.js support a let statement something like what's described on MDN??
var x = 8,
y = 12;
let ( x = 5, y = 10) {
return x + y;
} //15
If not, is there a way to duplicate the functionality with a self-executing anonymous function or something?
And/or is there another js environment that
let
and andEDIT:
This question was asked quite a while ago. As of now, late 2015, the answer is "Yes, yes it does". Harmony features were included by default in io.js 3.3, and have been recently brought back to node.js with the 4.x release.
I don’t think Node supports let
, but you can do this:
var a = 5;
(function () {
var a = 6;
console.log(a); // => 6
})();
console.log(a); // => 5
Yes, you can use let within node.js, however you have to run node using the optional --harmony flag. Try the following test.js:
"use strict"
var x = 8,
y = 12;
{ let x = 5, y = 10; console.log(x + y); }
console.log(x + y);
And then run the file node --harmony test.js
which results in:
15
20
I would not recommend using this in an important production application, but the functionality is available now.
This is an old question and the accepted answer is no longer correct.
let
support was added in Node.js 4.x.
See here for the full version support matrix.
node --use_strict --harmony_scoping
You can use the Babel transpiler and use let
as well as many other ES6/ES2015 features.
To use babel:
$ npm install --save-dev babel
Then in your package.json
:
"scripts": {
"start": "babel-node index.js"
}
Inside index.js
:
let foo = 'bar;
Then start the server:
$ npm start
©2020 All rights reserved.