首页 > Web开发 > 详细

JS中的for和for in循环

时间:2015-12-20 18:59:28      阅读:347      评论:0      收藏:0      [点我收藏+]

1、for循环通常用来遍历数组或类数组对象

模式1:长度缓存

for(var i=0,max=arr.length;i<max;i++){
  //your code
}

模式2:逐减,与零比较比与非零比较速度快

var i,myarrary=[];
for(i=myarray.length;i--;){
//code
}

var myarray=[],i=myarray.length;
while(i--){
//code
}

2、for-in循环用来遍历非数组对象。

与for循环不同的是,for-in循环是对对象每个属性(包括对象原型链的属性)的枚举,并且它并不是按照属性排列的顺序(无序)来的。

模式1:object.hasOwnProperty(propname); //如果proname是非继承属性,返回true;如果不存在或是从原型链继承属性,返回false。

for(var i in man){
if(man.hasOwnProperty(i)){
      //code
  }
}

模式2:用call

var i,hasOwn = Object.prototype.hasOwnProperty;
for(i in man) if(hasOwn.call(man,i)){
    //code
}

 

JS中的for和for in循环

原文:http://www.cnblogs.com/myboke/p/5061275.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!