应用之道 不要拘泥形式function test(a,b){ b = b || 100; alert([a,b]); } test(1); test(1,3);
可以使用javascript本身的arguments数组来实现,类似于以下的代码,只是判断参数是否已传值,再给不给默认值的问题了 function test(){ var a=arguments[0]?arguments[0]:"1"; var b=arguments[1]?arguments[1]:"2"; alert(a+":"+b) } test("333"); test("","3333"); test("333","444");
function test(){ var a=arguments[0].a || "1"; var b=arguments[0].b || "2"; alert(a+":"+b) } test({a:"333"}); test({b:"333"}); test({a:"333",b:"444"}); 以前碰上需要的时候,倒是这样用得多,就是直接没有形参的定义,使用javascript的arguments
b = b || 100;
alert([a,b]);
}
test(1);
test(1,3);
function test(){
var a=arguments[0]?arguments[0]:"1";
var b=arguments[1]?arguments[1]:"2";
alert(a+":"+b)
}
test("333");
test("","3333");
test("333","444");
var a=arguments[0].a || "1";
var b=arguments[0].b || "2";
alert(a+":"+b)
}
test({a:"333"});
test({b:"333"});
test({a:"333",b:"444"});
以前碰上需要的时候,倒是这样用得多,就是直接没有形参的定义,使用javascript的arguments
写n多参数,调用时你一个参数都不传照样可以执行,只是需要函数内部判断参数是否有传递