Javascript 循环通过json解析循环通过每个字符

Javascript 循环通过json解析循环通过每个字符,javascript,php,json,Javascript,Php,Json,我试图循环使用从PHP获得的JSON字符串,我遇到的问题是,当我尝试循环使用字符串时,它不会循环使用每个对象,而是循环使用字符串中的每个字符 我认为解决这个问题的办法是解析它,但没有成功 var json = JSON.stringify(player.get(url)); console.log(json); json = $.parseJSON(json); for (var key in json) { if (json.hasOwnProperty(key)) {

我试图循环使用从PHP获得的JSON字符串,我遇到的问题是,当我尝试循环使用字符串时,它不会循环使用每个对象,而是循环使用字符串中的每个字符

我认为解决这个问题的办法是解析它,但没有成功

var json = JSON.stringify(player.get(url));
console.log(json);
json = $.parseJSON(json);

for (var key in json) {
    if (json.hasOwnProperty(key)) {
        console.log(key + " -> " + json[key]);
    }
}
我得到了一个非常好的JSON结果,因为我已经在一个在线转换器中进行了测试-

{
    "id": "1",
    "username": "Jessica",
    "password": "password",
    "age": "100",
    "size": "100"
}
但是,当我在其中循环时,控制台显示:

0->{index.html:29

1->“index.html:29

2->0 index.html:29

3->“index.html:29

4->:index.html:29

5->“index.html:29

6->1 index.html:29

7->“index.html:29

8->,index.html:29

9->“index.html:29

10->c index.html:29

11->h index.html:29

12->a index.html:29

13->r

你知道为什么它不能正确地循环通过json对象吗?

更改

var json = JSON.stringify(player.get(url));

如果
player.get(url);
返回一个包含JSON的字符串,则无需将该字符串转换为JSON


基本上,您要将数据转换为JSON两次,但只解析一次。因此,要么解析数据两次,要么做更合理的事情,不要将包含JSON的字符串转换为JSON。

我建议使用
$进行循环。每个
。看看如何循环JSON对象的这两个相关问题。1.2.您是g设置结果,因为它仍然是一个字符串,而不是一个对象。是的,刚刚从上一篇文章中发现,这是problem@Felix非常感谢你,太棒了!
var json = player.get(url);