如何将字符串解析为 JSON 对象 JavaScript

How to parse string as JSON object javascript

本文关键字:JSON 对象 JavaScript 字符串      更新时间:2023-09-26

我的php脚本中有以下代码。

var str = "[{id : 'Gadji Tallo', poste : 'attaquants', taille : '1.85m', poids :'77kg', age :'20'},{id:'Mbaye Diagne', poste :'attaquants', taille : '', poids :'', age :'22'},{id:'Sigamary Diarra', poste :'attaquants', taille : '1.76m', poids :'74kg', age :'29'}]";
var result = JSON.parse(str)

我想要的是将其解析为 JSON 以循环遍历它。当我运行以下代码时,我在chrome控制台中收到此错误:

未捕获的语法错误:意外的标记 i

任何线索/帮助都是欢迎的。谢谢

这不是

JSON,但它几乎是一个字面上的JavaScript对象,你似乎并不真正需要JSON。

当你在PHP中生成这个时,只需不要加上引号,也不需要解析:

var result = [{id : 'Gadji Tallo', poste : 'attaquants', taille : '1.85m', poids :'77kg', age :'20'},{id:'Mbaye Diagne', poste :'attaquants', taille : '', poids :'', age :'22'},{id:'Sigamary Diarra', poste :'attaquants', taille : '1.76m', poids :'74kg', age :'29'}];

您还需要在名称两边加上引号,例如:

var str = '[{"id" : "Gadji Tallo", "poste" : "attaquants", "taille" : "1.85m", "poids":"77kg", "age" :"20"}]';

从字符串解析 JSON 时。

如果你从PHP打印JSON,为什么不把数组保留在PHP中,然后打印

print "var obj = " . json_encode($array);