我正试图通过AJAX远程获取数据。
当我通过document.write(obj)
查看数据时,我会在浏览器上看到这一点:
[object Object]
这是什么意思?这是数组还是数组?
我是JavaScript的新手,我需要查看这个obj并获取文本。我真的很感激任何见解。
我使用了console.log(data)
,我看到了这个输出。我需要从这个输出中删除\
。我试过了:
data.strReplace(/\\/g/,'');
它不起作用。
数据如下所示:
["{\"name\":\"ServerA\",\"data\":[[1406284185600,0.092],[1406285985600,0.092]]}]
这是我所看到的截图:
这是控制台输出:
答案 0 :(得分:10)
请勿使用document.write()
进行调试。
使用console.log()
并检查浏览器的开发者工具。
[object Object]
是对象显示为字符串的方式:您之后会看到这一点,因为您将数据显示为HTML。您还会看到alert()
,这是人们错误地用于调试的另一件事。
控制台会显示实际的数据,如下所示:
关于你的新信息:这里有一些问题。
您已删除最后一个结束花括号和最后一个结束括号之间的引号。它应该是
["{\"name\":\"ServerA\",\"data\":[[1406284185600,0.092],[1406285985600,0.092]]"}
这就是你所拥有的:
["{\"name\":\"ServerA\",\"data\":[[1406284185600,0.092],[1406285985600,0.092]]}
(请注意语法高亮的区别。)
您的正则表达式有拼写错误:它应该是/\\/g
,而不是/\\/g/
。
.replace()
,而不是.strReplace()
。JSON.parse()
。修复所有 之后,它就可以了。
答案 1 :(得分:4)
Firefox有一个名为Firebug的插件。这将允许您扩展对象,查看其结构和内容。
关于如何提取数据的问题,您可以通过执行以下操作来获取人物对象的名称:
var name = person.name;
console.log(name);
这将获取已创建的person对象的名称。现在将其调整为您的对象名称,以及您要提取的任何信息。正如我所说,firebug将使事物更容易在视觉上看到物体的结构。
答案 2 :(得分:2)
Chrome DevTools或FireFox FireBug是您最好的朋友。打开它,然后使用console.log(data)
在工具控制台中查看它。