简体   繁体   English

如何添加带有特殊字符的字符串作为json键?

[英]how to add string with special character as json key?

I want to add string with special character in JSON as KEY.For example " Sam@123 " 我想在JSON中添加带有特殊字符的字符串作为KEY。例如“ Sam @ 123
Here is the code, that I am trying. 这是我正在尝试的代码。

<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>

I am getting following error at line 6 " eval...... ". 我在第6行“ eval...... ”处出现以下错误。

Uncaught SyntaxError: Unexpected token ILLEGAL Uncaught SyntaxError:意外的令牌非法

Is there any other way to add special character in Json as KEY? 还有其他方法可以在Json中添加特殊字符作为KEY吗?

I am also not able to add 我也无法添加

var key="samw-123";

for this I am getting error saying 为此,我说错了

Uncaught ReferenceError: Invalid left-hand side in assignment 未捕获的ReferenceError:分配中的左侧无效

Should work fine using such syntax instead: 应该使用以下语法正常工作:

eval("jsonObj['" + key + "'] = 11");

Actually, eval is not even required: 实际上,甚至不需要eval

jsonObj[key] = 11;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM