如何将 javascript 字符串转换为对象

How to convert a javascript String to an Object

我从 json 文件中获取变量

var node = data.nodes;

alert(node);returns以下

[{"name" : "30","group": 0} , {"name" : "40","group": 0} ]

这不是对象

如果我将这个值直接赋给一个变量,那么它将被视为对象,如下所示。

var node = [{"name" : "30","group": 0} , {"name" : "40","group": 0} ]

为什么值一开始就不是对象? 如何将变量转换为对象?

任何帮助将不胜感激。

可以使用JSON.parse方法将字符串转为对象:

var node = JSON.parse(data.nodes);

请注意,某些较旧的浏览器(例如 IE 7)不支持 JSON 对象。如果您需要支持旧版本,可以在我链接到的文档页面上阅读更多相关信息。

试试这个:

<script type="text/javascript">
var node = data.nodes //[{"name" : "30","group": 0} , {"name" : "40","group": 0} ]
var data = JSON.parse(node);
console.log(data); //{name: "30", group: 0}, {name: "40", group: 0}
console.log(data[0]); //{name: "30", group: 0}
</script>