我有以下Json结果:
(取自控制台)
data
Object {0: Object, 1: Object, 2: Object, 3: Object, 4: Object, 5: Object, 7: Object}
如果我在控制台中data[0]
我得到以下结果:
Object {id: 125, Module_id: 2, academy_id: 7, Team_id: 5, end: "2014-08-12 00:00:00"…}
然而,当我data.length
undefined
时,价值是{{1}},有人能告诉我发生了什么吗?
答案 0 :(得分:5)
使用 Object.keys
Object.keys(data).length;
Object.keys()方法返回给定对象自己的数组 可枚举的属性,与a提供的顺序相同 for ... in循环(不同之处在于for-in循环枚举 原型链中的属性也是如此。
答案 1 :(得分:1)
您将json结果构建为Object
而不是 Array
。不要混淆那些! data[0]
是结果对象的第一个实例变量的值。如果你想在发送它之前将你的json对象构造成一个数组,那么在你的php文件中确保你将对象编码为一个数组
read.php
<?
$data = array('a' => 1, 'b' => 2, 'c' => 3);
print json_encode($data);
?>
答案 2 :(得分:0)
这将按预期工作:
out.clear();