【简明笔记】循环条件的优化

本文介绍了一种优化循环的方法,通过将数组长度存储在局部变量中并反向递减计数来减少每次迭代时的属性访问,从而提高JavaScript代码的执行效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[javascript] view plain copy
  1. /*
  2. *优化循环
  3. */
  4. //优化前
  5. for(vari=0;i<items.length;i++){//判断条件:(1)i<items.length;(2)i<items.length==true;
  6. process(items[i]);
  7. }
  8. //优化后
  9. varcount=items.length;//把length属性放在局部变量里
  10. for(vari=count;i--;){//判断条件:i==ture;(当i=0时,此处i会转换为false)
  11. process(items[i]);
  12. }

说明:笔记来自《高性能javascript》

带“判断条件”的注释看起来似乎有问题,但细想也对。i<items.length的判断结果是true或false,如果是ture才调用process()。这里的判断条件实际是分步的,如果画上流程图就清楚了。


[javascript] view plain copy
  1. /*
  2. *优化循环
  3. */
  4. //优化前
  5. for(vari=0;i<items.length;i++){//判断条件:(1)i<items.length;(2)i<items.length==true;
  6. process(items[i]);
  7. }
  8. //优化后
  9. varcount=items.length;//把length属性放在局部变量里
  10. for(vari=count;i--;){//判断条件:i==ture;(当i=0时,此处i会转换为false)
  11. process(items[i]);
  12. }

说明:笔记来自《高性能javascript》

带“判断条件”的注释看起来似乎有问题,但细想也对。i<items.length的判断结果是true或false,如果是ture才调用process()。这里的判断条件实际是分步的,如果画上流程图就清楚了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值