Javascript呼叫的两个用法实例

用法一(常用用法):

表示形式是一个对象。方法:调用(另一个对象),意思是用另一个对象代替当前对象执行当前对象的方法:

复制代码代码如下所示:
功能类(){
this.name =class1;
this.showname =函数(){
警报(这个名字);
}
}
功能2(){
this.name =班;
}
VaR C1 =新一班();
VaR C2 =新班();

c1.showname.call(C2);
(C2。showName); / /无法执行


我们首先定义两个函数,一阶、二阶,和他们的主要区别是,班是一个showName()超过1方法。然后我们定义的对象C1和C2的一阶、二阶对应,当我们清醒地意识到,C1具有showName方法()C2不。但奇迹出现。当我们执行c1.shoname.call(C2),我们弹出C2、名称值即班。事实上,我们的实现仍然是C1,但C2对象暂时取代C1的执行完成后,他们仍然定义方式,C2没有什么太多的方法。为了检测C2的方法有很多,有c2.shownmae(例如);它是不可执行的,浏览器将提供对象没有method'showname#误差。

你为什么要这么做我说,这是一时的使用,我们使用的是高效的编程,但这并不是无限的,假设C1和C2是用来代表取代的对象和替换对象和意义是用来表示在C1.1固有的方法,当需要不需要参数,事实上,没有任何的母函数,局部变量,c1.fun1.call(C2)和c1.fun1(2),当没有什么区别;需要不需要参数,利用母函数的变量,然后要求C1和C2函数生成的变量需要使用相同的名称;3,当需要参数,改写c1.fun1.call(C2、1参数、2参数,N参数…),这个名称的变量名在函数中生成C1变量的时间不是C2和函数的生成,只需要,实际上,当我们使用调用时,C2和C1在结构和功能上非常相似,所以上述三点是很容易避免的。

使用两:

在函数的定义过程中,表达式的形式是:另一个存在的函数。它可以把另一个现有函数的所有变量和方法克隆到自己的函数中,并实现类似于继承的函数:

复制代码代码如下所示:
功能动物(名称){
this.name =名称;
this.showname =函数(){
警报(这个名字);
}
};

VaR动物=新的动物(small_animal );
Animal.showName(); / /警报(small_animal )

函数猫(名称){
Animal.call(这名字);
};

/ / var动物= null; / /取消它

VaR的猫=新的猫(black_cat );
Cat.showName(); / /警报(black_cat )