Json在js中对数据循环进行编码
Json encode data looping in js
我有php返回给JS的数据,但我不知道如何循环它来访问信息。。。我有这个:
result = call_data('get_chat.php');
console.log(result);
for(var data in result){
alert(result[data]["id"]); //says undefined
}
控制台日志显示:
[{"eventtime":"0000-00-00 00:00:00","message":"test2","bywho":"dave","id":"2"},
{"eventtime":"0000-00-00 00:00:00","message":"testttt","bywho":"dave","id":"1"}]
所以我想从中循环每个数据,但我怎么做真的很困惑!!它只是每次都说未定义。
如果是typeof result === "string"
,那么在迭代之前仍然需要解析响应:
result = JSON.parse(call_data('get_chat.php'));
然后,正如其他人所指出的,您应该使用一个带有Array
的简单for
循环:
for (var i = 0, l = result.length; i < l; i++) {
console.log(result[i]["id"]);
}
for..in
循环将迭代所有可枚举键,而不仅仅是索引。
看起来您的php代码返回了一个对象数组,因此您需要首先遍历该数组,然后访问id
密钥,如下所示:
for (var i = 0; i < result.length; i++){
var obj = result[i];
console.log(obj.id); // this will be the id that you want
console.log(obj["id"]); // this will also be the id
}
相关文章:
- jQuery:循环一个具有不同超时值的循环
- 在循环中分配json值时,值被覆盖
- 如何在下面的ES6循环中获得前面的文本
- Json在js中对数据循环进行编码
- 如何在Qualtrics中编码javascript来识别当前循环
- 防止在地理编码器谷歌地图API中循环
- 谷歌地图:添加硬编码标记到循环
- 在一些硬编码的数据上循环
- 在json编码的对象中循环
- 闭包地理编码循环多个标记变量
- 谷歌地理编码-关闭/循环问题
- 如何访问循环外部的地理编码坐标
- 如何添加在animate.css中编码的css动画循环之间的间隔
- 如何在Javascript中将硬编码压缩成数组和for循环
- 多个地址的Google反向地理编码:在循环中实现回调函数的问题
- 用jquery在json编码器对象中循环
- Jquery循环编码
- 我如何在一个循环中做地理编码而不获得overquery限制
- 如何使用编码器获取for循环中的每个值
- 地理编码器调用在 for 循环中不起作用