首页 > 其他 > 详细

for循环中保留i值得方法

时间:2018-07-14 15:38:31      阅读:230      评论:0      收藏:0      [点我收藏+]

通常情况下,因为一些效果我们需要获取到for循环中的i的值,但是往往拿到的都是最后一个i的值。下面介绍几种方法可以获取到i的值

1.自定义属性:

arr[i].index = i;
以一个事件为例
例如: for(var i =0;i<arr.length;i++){
arr[i].index = i;
arr[i].onclick = funtion(){
var index = this.index;
console.log(index)  //  ===>1,2,3,4
}

}

2 自执行函数:
for(var i=0;i<5;i++){
(function(n){

setTimeout(function(){ 

console.log(n); 

},1000)

})(i)}

==>0,1,2,3,4

3 闭包:
var list =document.querySelectorAll("ul>li");
for(var i=0;i<list.length;i++){
list[i].onclick=function(i){
return function(){
    console.log(i)
    }
    }(i);
}
4 使用ES6语法中的let代替var关键字:
var list =document.querySelectorAll("ul>li");

 

for(let i = 0 ; i < list.length ; i++) {
    list[i].onclick=function(){
    console.log(i)
    }
}

==>0,1,2,3 

for循环中保留i值得方法

原文:https://www.cnblogs.com/yunshangwuyou/p/9309483.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!