Javascript 中 apply 、call、argument的使用方法

最近压力很大啊!

 

apply 与 call 的功能基本相同先看看 apply的用途

 

// 第一个类
function clazz1(){
       this.name = "刘德华";
}

clazz1.prototype.func = function(){
       alert(this.name);
}

//第二个类
function clazz2(){
       this.name = "周杰伦";
}

var clz1 = new clazz1();
//调用自己的方法
clz1.func();
//定义一个clazz2的对象并且调用clazz1的func方法
var clz2 = new clazz2();
clz1.func.apply(clz2);*******************************这里clazz2的对象调用了clazz1的func方法

 

可以理解为-----》将clz1的func方法应用到claz2上。

 

下面再举一例

 

 

//apply 与 call 的区别

function func1(a,b){
 alert(a + b);
}

function func2(a,b){
 func1.apply(this,[a,b]);
 
 func1.apply(this,arguments); //arguments内置对象,代表着正在执行的和调用他的函数的变量
 
 func1.call(this,a,b);
 
}

func2('a','b');

 

重点来了,apply 与 call 的主要区别就是,call的参数可以有很多个,而apply的方法的参数只有两个,第二个是一个数组,或者javascript的内置对象arguments

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值