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

bind方法代替闭包

时间:2014-11-07 18:33:37      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:style   blog   io   color   ar   使用   java   sp   for   

<a href="JavaScript:">a</a>
<a href="JavaScript:">b</a>
<a href="JavaScript:">c</a>
<a href="JavaScript:">d</a>
<a href="JavaScript:">e</a>
<script>
var i,s=document.querySelectorAll("a");
for(i=0;i<s.length;i++)
  s[i].addEventListener("click",function(){
    alert(this); //bind的第一个参数可以在函数内使用this得到
  }.bind(i)/*这里对匿名回调函数bind一个参数*/);
</script>

 这里的bind可不是事件,只是把函数绑定上默认参数的方法而已。

 <script type="text/javascript">
        var f, o, fo, name = "SB";
        o = { name: "次碳酸钴" };
        f = function (e) { console.log(this.name + "" + e) };
        fo = f.bind(o, "颤抖吧人类!");

        f("直接调用时参数是有效的!");
        fo("这里的参数不会传到e!");
    </script>

通过代码可知: bind 改变了原来的 function 参数

bind方法代替闭包

标签:style   blog   io   color   ar   使用   java   sp   for   

原文地址:http://www.cnblogs.com/sunzhenyong/p/4081674.html

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