Finally es6 classes have landed in Node.js v4.0.0. But the feature needs --use_strict
option to be passed. e.g.
node --use_strict sampleClass.js
What does this --use_strict
option signify? Has it anything to do with "use strict"; javascript directive.
Note: On Linux Classes worked in v0.12 too but not in Windows
Edit: If you want to omit --use_strict
flag than use "use strict";
in js file
Well, JS has a strict mode which slightly changes how scoping works as well as other small things. Generally, it should be preferred since the bodies of classes and modules are always in strict mode anyway.
Classes work both in strict and loose mode. However, the JavaScript engine Node runs only supports running classes in strict mode at the moment.
This is a limitation of V8 (the engine) and will be resolved in the future. Here is the bug tracking it.
Starting from version 6, classes in NodeJS just work, so no --use_strict
flag is required.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With