码迷,mamicode.com
首页 > Web开发 > 详细

js for循环的陷阱

时间:2015-09-24 14:38:18      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:

定义一个数组,var temp = ["提示1", "提示2", "提示3"];

定义三个按钮的点击触发函数:

for (i in temp) {
  var tip = temp[i];
  var selector = "input.button:eq(${index})".replace(/\$\{index\}/, i);
  $(selector).click(function() {
    alert(tip);
  });
}

结果发现,三个按钮点击弹出的都是"提示3"。

使用jquery 的each循环,没有上述问题:

$.each(temp, function(i, tip) {
  var selector = "input.button:eq(${index})".replace(/\$\{index\}/, i);
  $(selector).click(function() {
    alert(tip);
  });
 });

 

js for循环的陷阱

标签:

原文地址:http://www.cnblogs.com/ywjy/p/4826429.html

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