Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 循环通过每个JSON响应返回;[对象对象]”;_Javascript_Jquery_Json_Ajax - Fatal编程技术网

Javascript 循环通过每个JSON响应返回;[对象对象]”;

Javascript 循环通过每个JSON响应返回;[对象对象]”;,javascript,jquery,json,ajax,Javascript,Jquery,Json,Ajax,我有这个关于成功的AJAX函数 success: function(response){ console.log(response); if(response.success){ $.each(response.vote, function(index, value){ alert(value); }); } } 这是来自控制台的JSON响应(请参阅下图) 但是它从警报提示中抛出“[Object Objec

我有这个关于成功的AJAX函数

success: function(response){
    console.log(response);
    if(response.success){
        $.each(response.vote, function(index, value){
            alert(value);
        });
    }   
}
这是来自控制台的JSON响应(请参阅下图)


但是它从警报提示中抛出“[Object Object]”,有什么想法、线索、帮助、建议、建议吗?

不要使用
alert
,而是使用
console.log
。您将能够以这种方式查看所有对象,避免收到垃圾邮件


此外,如果您需要查看深层对象,您可以使用类似的方法来打印引用自身的对象(循环引用将无法打印大对象)。

alert
使用对象的
toString
方法,该方法将返回此[object]对象。如果你想很好地打印一个对象,你可以使用
JSON.stringify(你的对象)

如果你想提醒这个值,而不是使用alert(JSON.stringify(value))在你当前的代码中,
值是一个对象,但是,alert只能显示
字符串,因此,它将使用
.toString
转换为字符串,然后该字符串将成为
“[Object Object]”

要将
显示为键值对,请再次使用
JSON.stringify(value)
使其成为
JSON

success: function(response){
    console.log(response);
    if(response.success){
        $.each(response.vote, function(index, value){
            alert(JSON.stringify(value));
        });
    }   
}
如果只想访问值的属性,请使用它们的键:

success: function(response){
    console.log(response);
    if(response.success){
        $.each(response.vote, function(index, value){
            // This will alert each items' `bundle` value.
            // It's enough in your case, but you may have to check if the target attribute you want to alert is also an object.
            alert(value.bundle);
        });
    }   
}

每个
都是一个
对象
,警报将使其成为一个字符串,在值上插入一个.toString,因此您将获得
[object object]
。您可以尝试
alert({})
,这会给出相同的结果。如果您只想查看该键值对,可以再次将其设置为
json
alert(json.stringify(value))
,但如果您只想访问其值,请使用
value.branch
。。。etc是可以的。那么,你知道如何在警报提示中将其呈现为字符串吗?就像我要显示分支一样,我得到每个分支。
alert
将对象强制转换为字符串,祖父母
Object
类上的
toString
方法使用原型链调用,因此它会发出警报
[Object Object]
。使用
console.log
。有关尝试向对象发出警报的相关问题。那么,您知道如何在警报提示中将其呈现为字符串吗?就像我要显示分支一样,我会得到每个分支。正如@kishan所写的,你可以使用
alert(JSON.stringify(value))
,但是如果对象有循环引用,这将失败,但只要尝试一下,对于简单的对象来说完全可以。