码迷,mamicode.com
首页 > 移动开发 > 详细

call()和apply()方法(切换上下文)

时间:2016-02-26 11:53:50      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

call方法:
语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]])
定义:调用一个对象的一个方法,以另一个对象替换当前对象。


apply方法:
语法:apply([thisObj[,argArray]])
定义:应用某一对象的一个方法,用另一个对象替换当前对象。


适用于继承和多重继承

单继承
function Animal(name){
  this.name = name;
  this.showName = function(){
    alert(this.name);
  }
}

function Cat(name){
  Animal.call(this, name);
}

var cat = new Cat("Black Cat");
cat.showName();

多继承
function Class10()
{
  this.showSub = function(a,b)
  {
  alert(a-b);
  }
}

function Class11()
{
  this.showAdd = function(a,b)
  {
  alert(a+b);
  }
}

function Class2()
{
  Class10.call(this);
  Class11.call(this);
}

 

call()和apply()方法(切换上下文)

标签:

原文地址:http://www.cnblogs.com/GerryOfZhong/p/5219651.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!