1

我的 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 控制台中出现此错误:

未捕获的 SyntaxError:意外的令牌 i

欢迎任何线索/帮助。谢谢

4

2 回答 2

2

这不是 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'}];
于 2013-11-04T17:32:21.240 回答
0

您还需要在名称周围加上引号,例如:

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

从字符串解析 JSON 时。

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

print "var obj = " . json_encode($array);
于 2013-11-04T17:48:49.973 回答