javascript入门 之 bind()

<!DOCTYPE html>
<HTML>
<HEAD>

   <meta http-equiv="content-type" content="text/html; charset=UTF-8">
   <meta lang="zh">

   <script>
        this.data = '全局数据';
        var modal = {
            data : '局部数据',
           show : function(){
               return this.data;
           }
        };

        alert(this.data);
        alert(modal.show());
      var get_data = modal.show;
        alert(get_data());
        var get_data_temp = get_data.bind(modal);
        alert(get_data_temp());

        //为什么要创建绑定函数,就是因为当我们调用某些函数的时候是要在特定环境下才能达到我们的需求,为此我们需要把函数放在特定环境下,就是使用bind把函数绑定到特定的所需的环境下

        this.name = '天行';
        this.age = '30';

        var info = {
          name : '胡海',
         age  : '20',
         view : function (time = '2020',sth = '发财') {
            return (this.age + '岁的' + this.name + '将要在' + time + sth);
            }
      };

        db = {
            name : '蓝月',
            age  : '22'
        };

        var msg = info.view;

      alert(info.view('2018-12-12','当老板'));
      alert(msg('上海','结婚'));
      alert(info.view.bind(info)());
      alert(info.view.bind(db,'北京','办公司')());

      //使用bind()方法使函数拥有预设的初始参数,这些参数会排在最前面,传给绑定函数的参数会跟在它们后面

   </script>
</HEAD>

<BODY>

</BODY>
</HTML>

猜你喜欢

转载自blog.csdn.net/ITlanyue/article/details/81567166