call
var a={ name:'xuux', fn:function(a,b){ console.log(a+b);//3 console.log(this);//{name: "xuux", fn: ƒ} } } var b=a.fn; b.call(a,1,2);//传入的参数要分别放入 console.log(b);//ƒ (a,b){console.log(a+b); console.log(this);}
apply
var a={ name:'xuux', fn:function(a,b){ console.log(a+b);//3 console.log(this);//{name: "xuux", fn: ƒ} } } var b=a.fn; b.apply(a,[1,2]);//传入的参数用数组存放 console.log(b);//ƒ (a,b){console.log(a+b); console.log(this);}
bind 返回的是一个修改后的函数。需要另外调用。
var a={ name:'xuux', fn:function(a,b){ console.log(a+b);//3 console.log(this);//{name: "xuux", fn: ƒ} } } var b=a.fn; var c=b.bind(a,1);//传入的参数按顺序赋值 c(2);
如对本文有疑问, 点击进行留言回复!!
androidx+viewpage+tablayout+json开发(加载图片和视频)
网友评论