我想在JSON中添加带有特殊字符的字符串作为KEY。例如“ Sam @ 123 ”
这是我正在尝试的代码。
<script type="text/javascript">
var jsonObj={"sam":1,"rudolph":1,"js":1," ":12};
var key="samw@123";
alert("Add it.")
// Adding the key with Special Character in JSON
eval("jsonObj."+key+"=11")
alert("Added successfully.")
for(var i=0; i< Object.keys(jsonObj).length; i++){
alert("KEY#"+Object.keys(jsonObj)[i]);
}
</script>
我在第6行“eval......
”收到以下错误。
未捕获的SyntaxError:意外的标记ILLEGAL
还有其他方法可以在Json中添加特殊字符作为KEY吗?
我也无法添加
var key="samw-123";
为此我收到错误说
未捕获的ReferenceError:分配中的左侧无效
答案 0 :(得分:5)
使用这样的语法应该可以正常工作:
eval("jsonObj['" + key + "'] = 11");
实际上,甚至不需要eval
:
jsonObj[key] = 11;