请问,怎么实现这种传递参数的方式(动态参数个数):test("kk",{ip:"127.0.0.1",name:"admin",pwd:"admin"});
test(ip:"127.0.0.1",name:"admin",pwd:"admin",logDate:"2010-3-13");
test(ip:"127.0.0.1",name:"admin",pwd:"admin",logDate:"2010-3-13");
test(ip:"127.0.0.1",name:"admin",pwd:"admin",Fn:Fn);
var Fn=function(){
alert("vvv");
});
传递函数没问题,传就是了。
这位同学在那学到这样的参数构造了wich is "test(ip:"127.0.0.1",name:"admin",pwd:"admin",Fn:Fn)" ?
我只看到过:"test({ip:"127.0.0.1",name:"admin",pwd:"admin",Fn:Fn})"
about NO.1:<script type=text/javascript>
function test(){
var b, a = arguments;
a.length == 1 && (b=a[0]) && alert("ip = " + b.ip + "\nname = " + b.name + "\npwd = " + b.pwd + "\nlogDate = " + b.logDate);
a.length == 2 && (b=a[1]) && alert("kk = " + a[0] + "\nip = " + b.ip + "\nname = " + b.name + "\npwd = " + b.pwd);
}
test({ip:"127.0.0.1",name:"admin",pwd:"admin",logDate:"2010-3-13"});
test("kk",{ip:"127.0.0.1",name:"admin",pwd:"admin"});
</script>about NO.2:<script type=text/javascript>
var test = function(o){
o.Fn();
}
var Fn = function(){
alert("vvv");
}
test({ip:"127.0.0.1",name:"admin",pwd:"admin",Fn:Fn});
</script>
function Fn(){
alert("fff");
}
var test=function(){
var b,a=arguments;
if(a.length==1){b=a[0];b.Fn();alert("ip="+b.ip+"\nname="+b.name);}
else if(a.length==2){b=a[1];b.Fn();alert("kk="+a[0]+"\nip="+b.ip+"\nname="+b.name);}
else{return;}
}
test("kk",{ip:"202",id:12,name:"kkk",Fn:Fn});
test("kk",{ip:"202",id:12,name:"kkk",logDate:"2010-3-14",Fn:Fn});
test("kk",{ip:"202",id:12,name:"kkk",status:1,Fn:Fn});
不同的参数。