0

I'm trying to create a function with optional parameters.

function RetvinkletTrekant(par1, par2, par3, par4, par5, par6){

    if (par1) {var a = par1}
    if (par2) {var b = par2}
    if (par3) {var c = par3}
    if (par4) {var A = par4}
    if (par5) {var B = par5}
    if (par6) {var C = par6}

    document.write(A);
}

RetvinkletTrekant(null, null, null, 4, null, null);

Thanks in advance.

4

2 回答 2

1

如果您实际上是在询问“可选参数”而不是“最佳参数”,那么最好的方法就是使用这样的对象。

function RetvinkletTrekant(a){

    if (a.par1) { var a = a.par1; }
    if (a.par2) { var b = a.par2; }
    if (a.par3) { var c = a.par3; }
    if (a.par4) { var A = a.par4; }
    if (a.par5) { var B = a.par5; }
    if (a.par6) { var C = a.par6; }

    document.write(A);
}

RetvinkletTrekant({
    par1: 4
});
于 2013-10-15T23:17:13.090 回答
0

尝试重构函数以使用一个参数。改变

function RetvinkletTrekant(par1, par2, par3, par4, par5, par6) {
// ...
}

像这样

function RetvinkletTrekant(config) {
// ...
}

其中 config 是一个包含可选参数的对象:

RetvinkletTrekant({par1: "foo", par5: "bar"});
于 2013-10-15T23:17:52.340 回答