javascript:相同类型对象的不同构造函数

前端之家收集整理的这篇文章主要介绍了javascript:相同类型对象的不同构造函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以在 javascript中为一个类创建多个构造函数
即一个零参数,一个一个,一个两个,等等…

如果是这样,怎么样?

谢谢!

解决方法

不,Javascript不支持函数重载.

但是,在每个函数内部,您都可以访问arguments object,该函数包含提供给函数的所有参数,无论是否声明.您可以简单地查看它并确定您在构造函数中想要做什么.

坏的,未经定义的例子:

function Foo() {

    function singleParamConstructor(foo) {
        ...
    }
    function twoParamConstructor(foo,bar) {
        ...
    }

    switch (arguments.length) {
        case 1 :
            singleParamConstructor(arguments[0]);
            break;
        case 2 :
            twoParamConstructor(arguments[0],arguments[1]);
            break;
        ...
    }
}

猜你在找的JavaScript相关文章