JavaScript没有java中的extends关键字去实现继承,那么它如何实现自己的继承呢?
1.prototype方式:
JavaScript每个对象都一个prototype属性,这个属性的含义为:返回对象类型原型的引用。
var myObject=function(){
}
myObject.prototype.add=function(i,j){
return i+j;
}
var o=new myObject();
console.log(o.add(1,2));
var add=function(i,j){
return i+j;
}
var sub=function(i,j){
return i-j;
}
console.log(add.call(sub,1,2));//将sub看成add.数字1,2为需要传递的参数,所以结果不是-1而是3
3.apply方式:
var add=function(i,j){
return i+j;
}
var sub=function(i,j){
return i-j;
}
console.log(add.apply(sub,[1,2]));