//Demo with javascript .call()
var obj = {name:"rottenpen"};
var greeting = function(a,b,c){
return "welcome "+this.name+" to "+a+" "+b+" in "+c;
};
console.log(greeting.call(obj,"aaa","bbb","guangzhou"));
// 输出 welcome rottenpen to aaa bbb in guangzhou
前言
这篇文章里,我们会通过一些简单的案例来说明 call(),apply() 和 bind() 三种方法的区别。函数也是JavaScript中的对象,所以就有了这3个方法来控制函数的调用。call() 和 apply() 是 ECMAScript 3的语法,而 bind() 则是 ECMAScript 5才加入到 js 的大家庭里。
用法