由于javascript函数无法按我想象的参数传址,因此有时就会返回多个值.使用如下代码:
参考:http://blog.csdn.net/leftfist/archive/2008/04/09/2269415.aspx
<html>
<body>
<script>
function f(s1, man)
{
s1="byebye";
man=new Object();
man.name="YZX";
return [s1, man];
}
s1="hello";
man=new Object();
man.name="name";
man.age=30;
var ret=f(s1, man);
s1=ret[0];
man=ret[1];
alert ("s1=" + s1);
alert ("man.name=" + man.name);
alert ("man.age=" + man.age);
</script>
</body>
</html>
有时返回值中只要用第1个,则可以写成:
s1=f(s1, man)[0];
另外返回值还可以使用命名参数的形式:
return {_s1:s1, _man:man};
这样返回值使用时:
var ret=f(s1, man);
s1=ret._s1;
前面一种是以数组的形式返回结果(ret有length属性),后面一种是以对象的形式返回结果.