JavaScript JSON对象对象错误
JavaScript JSON Object Object error
我正试图从下面的数据中打印出键和值的名称,例如"Player 1'-'ball,'hat'"answers"Player 2-'ball,'hat'"。所以键有多个值名称,但我不确定如何打印出来。**我得到了"[object object]"作为响应**。有人能帮我理解一下并设法解决这个问题吗。
数据
{
"Player1": {
"ball": 1,
"hat": 2
},
"Player2": {
"ball": 1,
"hat": 2,
}
}
JavaScript
$.getJSON('data.json', function (data) {
var response = data;
for (key in response){
alert("key: " + key + "value :" + response[key]);
}
});
在任何现代浏览器中,最简单的方法是使用Object.keys()
并将结果连接到一个字符串中,如下所示:
for (key in response){
alert("key: " + key + " value :" + Object.keys(response[key]).join(' '));
}
结果:
key:Player1值:球帽
key:Player2值:球帽
你可以在这里测试一下。
打印对象时使用JSON.stringify(response[key])
。
$.getJSON('data.json', function (data) {
var response = data;
for (key in response){
alert("key: " + key + "value :" + JSON.stringify(response[key]));
}
});
或使用response[key].ball, response[key].hat
JSON
的stringify
功能在此进行救援。由于大多数内部函数都将数据参数作为字符串或有时作为缓冲区。因此,您可以使用以下代码:-
var response = {
"Player1": {
"ball": 1,
"hat": 2
},
"Player2": {
"ball": 1,
"hat": 2,
}
}
var dataString = JSON.stringify(response);
现在使用dataString
通过不同的呼叫进行发送和接收。
这里有一种打印对象内容的方法。Object.keys()方法用于访问玩家的"项目"并获取数组格式的项目已更新。
var response = {
"Player1": {
"ball": 1,
"hat": 2
},
"Player2": {
"ball": 1,
"hat": 2,
}
};
for (player in response) {
var items = Object.keys(response[player]);
var itemText = "";
for (i = 0; i < items.length; i++) {
itemText += " '" + items[i] + "'";
}
console.log(player + " -" + itemText);
//alternative way, suggested by NickCraver
console.log(player + " - "+ Object.keys(response[player]).map(function(k) { return ''''+k+''''; }).join(' ') );
}
相关文章:
- object响应时出现对象错误javascript
- Google嵌入API cb=gap对象错误
- JavaScript JSON对象对象错误
- JSON字符串到JavaScript对象错误
- Symfony2 JSON 对象 - 错误未捕获类型错误:无法使用“in”运算符搜索“636”
- 使用 Javascript 读取 JSON 对象(错误)
- 新的 $.fn.MyObject() 在 IE8 中触发“预期对象”错误
- 如何删除未定义的对象错误并根据位置重定向用户
- “'$' 为空或不是对象 ” 错误在 ajax 响应中
- 如何使用 AJAX 发布多个 JQuery 值并避免对象错误
- 我在IE移动版中使用计时器时收到[对象错误]
- IE8 中出现“需要对象”错误
- 存储为空或不是 dojo 中的对象错误
- IE 中需要 JavaScript 对象错误
- GSON 不是对象错误
- 如何使用TinyMCE和Internet Explorer 8解决“需要对象”错误消息
- 工作灯适配器 它不是一个函数,它是“对象”.错误
- IE8 - “为空或不是对象”错误
- 将小时数添加到 JavaScript 日期对象错误
- AJAX 请求导致“未定义不是对象”错误