你这个 s 是什么对象??JSON?ARRAY?
如果是 ARRAY:
var s=[{id:11,name:'aaa'},
{id:22,name:'bbb'},
{id:33,name:'ccc'}
]
//用 ss.length 就可以取得里面对象的数量。不用劳Jq的大驾。
如果是 JSON (正确的格式应该是这样):
var s = {"obj0":{id:11,name:'aaa'},
"obj1":{id:22,name:'bbb'},
"obj2":{id:33,name:'ccc'}
}
//据我所知的只能遍历它才能取得里面的对象数量
var num=0
$.each(s,function(index,obj){
num++
})
alert(num)
使用for...in可以遍历js对象的属性,用法如下:for...in 语句用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)。
for ... in 循环中的代码每执行一次,就会对数组的元素或者对象的属性进行一次操作。
for (变量 in 对象)
{
//在此执行代码
}
“变量”用来指定变量,指定的变量可以是数组元素,也可以是对象的属性。
示例:
for (var sProp in window) {
alert(sProp)
}
以上例子会弹出window对象中的所有属性
如果这个数组不是json的话,就可以for(var i=0i <array.lengthi++{}来获取数组中的每一个对象,然后在{}里添加:if(typeof array[i] == "object){
for(var key in array[i]){
//这里的array[i][key]就能遍历array数组里的对象的属性值了,key就是属性名,
}
}
如果最初的array也是个对象的话,就把for(var i=0i <array.lengthi++{}改成for(var i in array){}就行了