用参数参数伪装在Javascript中重载

在许多面向对象的高级语言中,存在大量的方法,Javascript无法覆盖概念,但我们可以通过参数伪装函数的重载。

在我们模拟代码之前,让我们看看代码。

复制代码代码如下所示:

表面上没有函数声明的正式参数

功能乐趣(){

警报(示例代码);

}

乐趣(明)



通过这个结果,我们可以看到,即使我们声明函数没有定义形参,我们也可以在调用方法时写出实际参数(事实上,当函数被调用时,表单参数被写入程序员)。

我们能得到代码中的实际参数吗答案是肯定的:看看代码:

复制代码代码如下所示:

表面上没有函数声明的正式参数

功能乐趣(){

警报(参数{ 0 });获取第一个实际参数值。

警报(参数{ 1 });获取第二个实际参数值。

警报(参数{ 2 });获取第三个实际参数值。

警报(参数长度);实际参数的数量。

警报(示例代码);

}

乐趣(明)



通过代码,我们可以知道参数(内部属性)本身是一个数组,它的函数是存储方法的实际参数。

有了以上的知识点,仿真方法是重装上阵,有一个思路,我们可以做一个判断的实际参数值执行不同的逻辑代码,简单的代码如下:

复制代码代码如下所示:

功能乐趣(){

如果(arguments.length = = 0){

警报(没有实际参数的代码);

}

否则如果(参数=长度= 1)

{

警报()执行传递在实参数中的代码;

}

否则如果(参数=长度= 2)

{

警报(执行两个实际参数的代码);

}

}

(有趣);

乐趣(肖明);

乐趣(肖明