如何将 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>
我从 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>