导出类定义的JavaScript

导出类定义的JavaScript,javascript,class,ecmascript-6,Javascript,Class,Ecmascript 6,我可以用JavaScript导出类定义吗?比如说, 在文件“HelloWorld.js”中: 然后在“index.js”中 如果我使用“node index.js”,那么我会得到以下错误: constructor(msg = 'Hello World~') { ^ SyntaxError: Unexpected token = at exports.runInThisContext (vm.js:53:16) at Module._c

我可以用JavaScript导出类定义吗?比如说,

在文件“HelloWorld.js”中:


然后在“index.js”中


如果我使用“node index.js”,那么我会得到以下错误:

  constructor(msg = 'Hello World~') {
                  ^

SyntaxError: Unexpected token =
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:387:25)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Module.require (module.js:367:17)
    at require (internal/module.js:16:19)
    at Object.<anonymous> (/data/users/soltiho/fbsource/fbcode/video_templates/test_env/index.js:3:18)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
constructor(msg='helloworld~'){
^
SyntaxError:意外标记=
在exports.runInThisContext(vm.js:53:16)
在模块处编译(Module.js:387:25)
在Object.Module._extensions..js(Module.js:422:10)
在Module.load(Module.js:357:32)
在Function.Module.\u加载(Module.js:314:12)
at Module.require(Module.js:367:17)
根据需要(内部/module.js:16:19)
在对象上。(/data/users/soltiho/fbsource/fbcode/video\u templates/test\u env/index.js:3:18)
在模块处编译(Module.js:413:34)
在Object.Module._extensions..js(Module.js:422:10)

我的节点是v5.5.0

节点不支持分解(但),使用分解无论如何都是错误的。导入/导出类没有什么特殊之处。请像导入其他模块一样导入它:

var myValue = require('myVModule');

尝试删除
HelloWorld
周围的
{}
(为什么您认为这些是必要的?)删除{}会将错误更改为:
**构造函数(msg='HelloWorld~'){^SyntaxError:Unexpected token=**
添加是因为文件可能包含更多最近的内容,所以只添加了..暂时没有意义。您使用的是哪个版本的节点?您可能应该通过babel或其他方式运行此操作。只需更新问题以删除破坏部分。是的,默认参数也不受支持。
  constructor(msg = 'Hello World~') {
                  ^

SyntaxError: Unexpected token =
    at exports.runInThisContext (vm.js:53:16)
    at Module._compile (module.js:387:25)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Module.require (module.js:367:17)
    at require (internal/module.js:16:19)
    at Object.<anonymous> (/data/users/soltiho/fbsource/fbcode/video_templates/test_env/index.js:3:18)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
var myValue = require('myVModule');