码迷,mamicode.com
首页 > 其他好文 > 详细

es6中let实例应用之一

时间:2017-11-14 14:42:08      阅读:124      评论:0      收藏:0      [点我收藏+]

标签:htm   i++   需求   var   span   pre   点击   ++   利用   

有如下情景

html部分:

<button class="btn">按钮1</button>
<button class="btn">按钮2</button>
<button class="btn">按钮3</button>
<button class="btn">按钮4</button>

js部分:

var btns = $(‘.btn‘);
for(var i=0;i<btns.length;i++) { 
    btns.eq(i).click(function () {
        alert(i);
    })   
} 

现在有个需求 点击每一个按钮,弹出该按钮对应的索引 ,但是按照上面的js执行,这样不管点击哪一个按钮,都只会弹出4 具体原因可以自行分析

传统的解决方法,是采用闭包

var btns = $(‘.btn‘);
for(var i=0;i<btns.length;i++) {
   (function(i){        
        btns.eq(i).click(function () {
            alert(i);
        })   
   })(i); 
} 

es6中利用let解决

var btns = $(‘.btn‘);
for(var let i=0;i<btns.length;i++) {
   // (function(i){        
        btns.eq(i).click(function () {
            alert(i);
        })   
   // })(i); 
} 

 

es6中let实例应用之一

标签:htm   i++   需求   var   span   pre   点击   ++   利用   

原文地址:http://www.cnblogs.com/adobe-lin/p/7831354.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!