fn.bind(obj, args)
bind() 方法会创建一个函数,该函数的 this 指向了传入的第一个参数,当 bind() 的参数为空时, this 指向全局对象。如浏览器中的 window 。
因为 js 是一门 Duck typing 语言,所以我们可以通过 bind 实现一些共有方法。
有的时候我们需要针对特定的 this 调用某些方法。写起来比较麻烦,这个时候就可以使用 bind 创建一个 shortcut 方便调用。
bind 也可以绑定构造函数,但是当执行生成的函数时,会忽略this指向,即使在绑定时已经对其赋值。
,bind(),调用一个新创建的函数,其新函数的this值会被绑定到给定bind()的第一个参数。
es6,参数表达,传参
bind(this),生成的新的updateChangedOptionAndMask,会把本身this的updateChangedOptionAndMask方法覆盖掉吗
不会覆盖,注入到this对象是一个新的引用,不是同一个东西,注入是一个未知的引用不能直接通过对象.的方法是使用,必须将他付给一个新的方法,才能使用。
var newfunc=func.bind(this,1,2)
生成一个新的方法,却不能想普通函数的参数传递调用他,而是将他们的参数累积起来。