swap() function for variables's values
本问题已经有最佳答案,请猛点这里访问。
我无法实现下面这个交换函数所需的结果,我希望值打印为3,2。
1 2 3 4 5 6 7 | function swap(x,y){ var t = x; x = y; y = t; } console.log(swap(2,3)); |
任何线索都会被感激的!
您的函数正在内部交换值,但函数不返回值。
下面的方法返回一个与提供的值相反的值数组。
1 2 3 4 5 6 7 8 | function swap(x, y) { var t = x; x = y; y = t; return [x, y]; } console.log(swap(2, 3)); |
但是,您可以很容易地执行以下代码片段之类的操作,因为-根据您提供的代码-似乎不需要实际交换参数的值。
1 2 3 4 5 | function swap(x, y) { return [y, x]; } console.log(swap(2, 3)); |
如果您实际上不需要交换值:
1 2 3 4 | function swap (x, y) { return [y, x]; } |
如果确实需要交换值,但不想声明另一个变量:
1 2 3 4 5 6 7 | function swap (x, y) { x = x + y; y = x - y; x = x - y; return [x, y]; } |