我正在使用我在其网站上根据可用指示here安装的node.js
。我试图从“JavaScript - The Good Parts”教科书中执行这个例子:
var myObject = {
value: 0;
increment: function (inc) {
this.value += (typeof inc) === 'number' ? inc : 1;
}
};
myObject.increment( );
document.writeln(myObject.value);
myObject.increment(2);
document.writeln(myObject.value);
但是,当我调用node test.js
(此文件的名称)时,我收到以下错误:
value: 0;
^
SyntaxError: Unexpected token ;
at Module._compile (module.js:439:25)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3
这是给出的确切示例,这就是为什么我对这为什么不起作用感到困惑的原因。我错过了什么吗?
答案 0 :(得分:2)
对象文字键值对使用逗号分隔,而不是分号。而不是:
var myObject = {
value: 0;
increment: function (inc) {
this.value += (typeof inc) === 'number' ? inc : 1;
}
};
使用此:
var myObject = {
value: 0,
increment: function (inc) {
this.value += (typeof inc) === 'number' ? inc : 1;
}
};