我做了以下交换功能:
function swap(a,b)
{
var c=b;
b=a;
a=c;
}
应该交换2个数字。 我有以下代码:
var x=5;
var y=10;
swap(x,y);
问题在于,当我在交换后输出这些变量的值时,我仍然得到5表示x,10表示y。 有什么想法吗?
答案 0 :(得分:0)
由于参数是按值传递的,因此您无法编写替换以下内容的函数:
var a, b;
var temp = a;
a = b;
b = temp;
你也可以使用单行:
b = [a, a = b][0];