JavaScript中for循环的几种写法与效率总结(2)

刚开始看的时候我也很疑惑,怎么能这么写?语句2放的是循环条件,i–是什么判断条件。其实不然,在语句2中,如果返回true循环会继续执行。在js中0,null,undefined,false,'',””作为条件判断时,其结果为false,也就说当i–到0的时候就是false,循环就终止了。

再回到文章开头的代码

for (var i = 0, rule; rule = rules[i++];) { //do something }

这个rule = rules[i++]就是判断条件,当成为undefined时就会终止循环啦。所以这段代码换成普通写法就是这样的:

for(var i = 0;i < rules.length;i++){ var rule = rules[i] }

其实就是把判断和赋值放到一起了,一边循环一边赋值。是不是挺简单?

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwgszj.html