我刚刚将node.js升级到v6.10.3并尝试运行一些测试代码。
var str = '{"foo": "bar"}';
var obj = JSON.parse(str);
console.log(obj.foo);
我将其保存到文件test.js并尝试从节点命令提示符运行它。
Windows Script Host说
' JSON'未定义
我可以打开Chrome窗口,打开调试器,打开控制台并输入相同的代码,然后就可以正常运行。
我搜索了google和SO以获得解释,我在JSON和undefined上找到了很多匹配项,但在节点中没有任何与此问题相关的内容。
答案 0 :(得分:1)
您需要确保指定节点可执行文件而不仅仅是javascript文件或双击javascript文件。例如:node test.js
。否则,Windows将尝试使用WSH(特别是其JScript引擎)来执行包含较旧的,较差的javascript运行时的代码。