js怎么优化for循环
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
for (var i = 0; i < 10; i++) {
// do something...
}
for (var i = 0; i < arr.length; i++) {
// do something...
}
其实大多数人都是这种写法,这种写法的缺点在于,每次循环都要去读取一次数组的长度,不划算
for (var i = 0, l = arr.length; i < l; i++) {
// do something...
}
将长度进行存储,之后循环无需再去读取长度
var i = 0, l = arr.length;
for (; i < l; i++) {
// do something...
}
这只是3的一种变体,另一种写法而已,谈不上优化。因为无块级作用域,所以和3的效果是一样的
for (var i = arr.length - 1; i >= 0; i--) {
// do something...
}
推荐的写法,它在第3种的基础上节约了一个变量。
ps:来源网络