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

原生方法系列 3(查缺补漏 不断更新)

时间:2016-05-05 17:31:55      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:

bind    对于给定函数,创建具有与原始函数相同的主体的绑定函数。在绑定函数中,this 对象将解析为传入的对象。绑定函数具有指定的初始参数

返回值   与 function 函数相同的新函数,thisArg 对象和初始参数除外

这个函数的功能就是改变原来函数的this对象和初始化参数

  var check = function(value) {
    if(typeof value !== ‘number‘) {
      return false;
    } else {
      return value >= this.min && value <= this.max;
    }
  }

  var range = {
    max:20,
    min:10
  };
  var getCheck = check.bind(range);
  var result = getCheck(12);
  console.log(result);//true

在上面的例子中我们将this对象也就是range传入到生成的函数中,此时函数中的this引用的就是range

  function test(a,b) {
    console.log(a,b);
  }

  var obj = {};
  var get = test.bind(obj,"a");
  get("b");

通过上面的使用方式,就能达到初始化参数的目的,但是绑定阶段的函数是不执行的,不像apply 和call 绑定this和传入参数后就在相应的this下执行了相应的函数,bind是在bind返回的函数执行才执行

 

原生方法系列 3(查缺补漏 不断更新)

标签:

原文地址:http://www.cnblogs.com/tiantianwaigong/p/5462525.html

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