jQuery getJSON 基础知识
我第一次尝试,测试功能似乎不起作用:
$.getJSON('questions.json', function(data) {alert(data);})
我试图提醒 JSON 文件的所有内容,该文件非常短。 我做错了什么?为什么我会得到[object Object]
My first attempt at it, and the testing function does not seem to work:
$.getJSON('questions.json', function(data) {alert(data);})
I am trying to alert all the contents of the JSON file which is really short.
What am I doing wrong? and why am I getting [object Object]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
JSON 是一种将对象编码为字符串的方法,以便可以轻松地在网络中传递。当 jQuery 接收到包含 JSON 数据的字符串时,它会反序列化它——它将它转回 Javascript 对象。该对象将传递给您的成功处理程序 - 您将其称为
data
。当您尝试
警报
Javascript 对象时,它会给您[object Object]
,而不是可读的形式。您应该使用浏览器提供的 Javascript 控制台通过
console.log
方法来调试此类数据。JSON is a way of encoding an object as a string so that it can be passed around a network easily. When jQuery receives a string containing JSON data, it deserializes it -- it turns it back into a Javascript object. This object is passed to your success handler -- you're calling it
data
.When you try to
alert
a Javascript object, it will give you[object Object]
, rather than a readable form.You should use a Javascript console as provided by your browser to debug data like this, with the
console.log
method.data 的值是一个 JSON 对象,因此当通过alert() 传递时,data 本身就是一个 JSON 对象;将转储为 [object Object]。
尝试 console.log(data);而不是警报();
对于我的调试和测试,我使用 firebug,它有一个漂亮的小控制台选项卡。
the value of data is a JSON object, so data itself, when passed via alert(); would dump as [object Object].
Try console.log(data); instead of alert();
For my debugging and testing I use firebug, which has a nice little console tab.
您的数据是 json 对象,因此您将收到 [object Object] 作为警报。
you data is json object, so you are getting [object Object] as alert.