这里主要用一个简单的数组来测试
先试试数组是50的情况下测试成绩:for比for…in慢
数组增加到5000,成绩:for比for…in快
数组增加到500000,成绩:for比for…in快得多
数组增加到50000000,成绩:for比for…in快得太多太多
从简单的数组应用来看,大家可以得出一个简要的结论:
for适合大数组使用
for…in适合数组较小时使用
深入一点
for…in可以用来遍历对象,数组也是一个对象,并且是一个内建的Array对象实例
for一般只适合遍历数组
总结:
应不同的场景使用不同的方法,获取最优的方案
附上代码,题主有兴趣的话可以自己试试
//测试for和for…in的区别vartotalCount=50;vararrs=[];for(varx=0;x<totalCount;x++){arrs[x]=x;}console.time(‘for’);for(vari=0;i<arrs.length;i++){arrs[i];}console.timeEnd(‘for’);console.log(“==================”);console.time(‘for’);for(varxinarrs){x;}console.timeEnd(‘for’);