您的位置:首页 > Web前端 > JavaScript

论js里面的for循环

2016-01-14 15:39 573 查看
首先搞懂执行的顺序:



对,执行顺序就是这样的。

for循环的作用:

1、在编写代码时,你常常希望反复执行同一段代码。

2、遍历数组,可以用forEach();对于DOM对象(nodelist)的话,比如通过document.getElementsByTagName('li')生成的dom对象,需要这样使用:

<script>
var item = document.getElementsByTagName('li');
new Array().forEach.call(item,function(li,index){
li.onclick = function(){
console.log(index);
}
})
</script>


或者是这样也

var item = document.getElementsByTagName('li');
[].forEach.call(item,function(li,index){
li.onclick = function(){
console.log(index);
}
})


也可以是这样:

var item = document.getElementsByTagName('li');
Array.prototype.forEach.call(item,function(li,index){
li.onclick = function(){
console.log(index);
}
})


现在来说说for循环的原理吧:

 for (变量 = 开始值;变量 <= 结束值;变量 = 变量 + 步进值) {需执行的代码 }

变量赋值给了需要执行的代码,其实此时如果for不在函数中的话,i是全局变量。

比如写这样一段代码:

var btn = document.getElementsByTagName('li');

for(var i = 0;i<2;i++){
(function(j){
btn[j].onclick = function(){
alert(j);
};
})(i)
}


步骤:

1、i=0;然后传给函数的形参j,j再赋值给需要执行的代码。执行完后i=i+1;在判断i<2,如果是true,则继续执行下面的代码。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: