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){}就行了
当我们修改数组的时候, length 属性会自动更新。准确来说,它实际上不是数组里元素的个数,而是最大的数字索引值加一。
例如,一个数组只有一个元素,但是这个元素的索引值很大,那么这个数组的 length 也会很大:
要知道的是我们通常不会这样使用数组。
length 属性的另一个有意思的点是它是可写的。
如果我们手动增加它,则不会发生任何有趣的事儿。但是如果我们减少它,数组就会被截断。该过程是不可逆的,下面是例子:
所以,清空数组最简单的方法就是: arr.length = 0
具体代码如下所示:
1、<script> //----------------for用来遍历数组对象;
2、 var i,myArr = [1,2,3] for (var i = 0i <myArr.lengthi++) { console.log(i+":"+myArr[i]) }
3、 //---------for-in 用来遍历非数组对象 var man ={hands:2,legs:2,heads:1} //为所有的对象添加clone方法,即给内置原型(object,Array,function)增加原型属性,该方法很强大,也很危险 if(typeof Object.prototype.clone ==="undefined"){ Object.prototype.clone = function(){} } ;
4、 // for(var i in man){ if (man.hasOwnProperty(i)) { //filter,只输出man的私有属性 console.log(i,":",man[i]) } } ;
5、//输出结果为print hands:2,legs:2,heads:1 for(var i in man) {//不使用过滤 console.log(i,":",man[i]) } ;
6、 //输出结果为://hands : 2 index.html:20 //legs : 2 index.html:20 //heads : 1 index.html:20 //clone : function ;
7、for(var i in man) { if(Object.prototype.hasOwnProperty.call(man,i)) { //过滤 console.log(i,":",man[i]) } };
8、 //输出结果为print hands:2,legs:2,heads:1 </script> 。
javaScript遍历对象总结:
1、
2、