call与apply

call与apply的区别:(作用,可以用别人的代码来实现自己的对应功能)
相同点:
都是用于改变this指向,
不同点:
是它的传参列表不同。call中的第一个参数为当前对象一般用this表示,(从第二个参数开始就是实参可以有多个)
apply中的第一个参数也为当前对象一般用this表示,第二个参数为一个数组
例:
function Person(name,age,sex){
this.name = name;
this.age = age;
thsi.sex = sex;
};
//以下用call调用
function Doctor(name,age,sex,profession){
Person.call(this,name,age,sex);
this.profession = profession;
};
//用apply调用
function Student(name,age,sex,profession){
Person.apply(this,[name,age,sex]);
this.profession = profession;
};
var doctor = new Doctor(‘jerry’,18,‘female’,‘nurse’);
var student = new Student(‘tom’,20,‘male’,‘student’);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值