解决方法
不,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; ... } }