辅助调用函数【call,apply,bind】
函数也是对象,每个函数都有自己的方法。
e.g。
var jane = { name:'Jane', sayHelloTo:function(name) { 'use strict'; console.log(this.name+' say hello to '+name); } }
1.call
Function. prototype. call( thisValue, arg1?, arg2?, ...)
例子如下:
//调用方法
jane.sayHelloTo("Grant");
jane.sayHelloTo.call(jane,"Grant");
var func = jane.sayHelloTo;
func.call(jane,"Grant")
2.apply
Function. prototype. apply( thisValue, argArray)
jane.sayHelloTo("Grant");
jane.sayHelloTo.apply(jane,["Grant"]);
var func = jane.sayHelloTo;
func.apply(jane,["Grant"])
3.bind
Function.prototype.bind(thisValue,arg1?,....,argN?)
function func() { console.log('this is :'+this); console.log('arguments is '+Array.prototype.slice.call(arguments)); } var bound = func.bind('abc',1,2);
bound.apply();
如果,您认为阅读这篇博客让您有些收获,不妨点击一下下方【推荐】按钮。
如果,您希望获取更新的博客,不妨点击下方的的 【关注我】。
如果,博文能对您有所帮助,想给予我更多的鼓励,右方【打赏】随时为您开放(萌萌脸)
本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权
专注更高率,自律更自信