标签:框架 执行 开始 str 解释 bind reac a+b 不执行
call
function fn1(a,b){
this.a++;
b++;
console.log(this.a+b);
}
var obj={a:1}
fn1.call(obj,3,5); //8 this.a指的是obj的a属性 且函数执行了
apply
function fn1(a,b){
this.a++;
b++;
console.log(this.a+b);
}
var obj={a:1}
fn1.apply(obj,[3,5]); //8 this.a指的是obj的a属性 b是数组中第二个元素 且函数执行了
bind
function fn(a,b){
this.a=a;
this.b=b;
console.log(a+b);
return this;
}
var obj=fn.call({},3,5);
var obj1=fn.apply({},[3,5]);
var obj2=fn.bind({})(3,5);
var obj3=fn.bind({}) //一样的函数 说明不执行,返回一样的新函数
console.log(obj,obj1,obj2); // {a: 3, b: 5} {a: 3, b: 5} {a: 3, b: 5}
标签:框架 执行 开始 str 解释 bind reac a+b 不执行
原文地址:https://www.cnblogs.com/94-Lucky/p/13340973.html