我有一段在IE上运行的JS代码,其中有以下这行:
var data = JSON.parse("{ skill: 'SK_AUTO_DEV_TEST', kind: 'IS_REQUIRED' }");
有人能告诉我这个有什么问题吗?
我有一段在IE上运行的JS代码,其中有以下这行:
var data = JSON.parse("{ skill: 'SK_AUTO_DEV_TEST', kind: 'IS_REQUIRED' }");
有人能告诉我这个有什么问题吗?
因为那不是有效的JSON - 你需要在属性名称周围添加引号。
JSON.parse('{ "skill": "SK_AUTO_DEV_TEST", "kind": "IS_REQUIRED" }');
JSON.parse()
遵循该规则,可能你使用的其他解析器在这个规则上更宽松。原因是为了避开保留字问题。在 JavaScript 文件中创建一个简单对象并尝试使用 { if : 0 }
和 { "if" : 0 }
。猜猜哪一个会出错? - epascarellovar text = '{ "skill": "SK_AUTO_DEV_TEST", "kind": "IS_REQUIRED" }'; JSON.parse(text);
对我来说,它在解析行处显示无效字符。我在w3school中尝试使用单引号,那里它可以工作,但在我的javascript中,它在开头和结尾添加双引号,这使得我的解析语句像这样:JSON.parse("{ "skill": "SK_AUTO_DEV_TEST", "kind": "IS_REQUIRED" }");
- Jaikrat