如何使用带有一个参数的javascript函数交换两个数字

如何使用带有一个参数的javascript函数交换两个数字,javascript,Javascript,我的要求是 当我给出a(0)时,我想显示这个输出,输出应该是5,当我给出a(5)时,输出应该是0 a(0) = 5 a(5) = 0 像这样 提示: 使用此函数 函数A(num){} 像这样 请帮我怎么做我是JS新手 请给我不同的解决方案,它对我的职业生涯更有用 function swap (input) { if( input == 0) return 5; return 0; } 我想不需要描述了我想我明白你的意思了 您希望将一个变量输入到函数中,然后返回另一

我的要求是 当我给出
a(0)
时,我想显示这个输出,输出应该是5,当我给出
a(5)
时,输出应该是0

 a(0) = 5  
 a(5) = 0  
像这样
提示:
使用此函数 函数A(num){} 像这样

请帮我怎么做我是JS新手

请给我不同的解决方案,它对我的职业生涯更有用

function swap (input) {
  if( input == 0)
    return 5;
  return 0;
}

我想不需要描述了

我想我明白你的意思了

您希望将一个变量输入到函数中,然后返回另一个尚未定义的变量。然后,您希望通过将该变量输入到同一个函数中来定义该变量,并将第一个输入作为输出。所以你应该有两个输出

这在技术上是不可能的,因为存在未定义的变量。然而,编程是关于想象力的,我想我有一个解决方案(从技术上讲,这是一个黑客,但它会起作用):

swap
函数在变量
i
中的值1和2之间来回切换。这就是它跟踪第一个或第二个输入及其完全相反的输出的方式。
swap
函数的输入或参数是用户在提示框中键入的任何内容。请随意使用,这只是它背后的肮脏代码。它们一起输出的原因是因为第二个输入未定义,因此机器无法猜测您要输入的内容。首先,我的小程序收集所有数据,并在输出时颠倒顺序。但是对于那些对JavaScript一无所知的用户来说,在我看来,这将非常有效


这应该适用于任何输入的数据类型,我自己用
对象
字符串
数字
数组
对其进行了测试。希望这有帮助

比@mtizziani的答案更短的备选方案:

let swap=x=>!x*5//是的,就这些
控制台日志(交换(0));

控制台日志(交换(5))发布的问题似乎根本不包含解决问题的方法。StackOverflow希望您能这样做,因为您的尝试有助于我们更好地了解您的需求。请编辑问题以显示您已尝试过的内容,以便说明您在某个问题中遇到的具体问题。有关更多信息,请参阅并获取。如果我调用
a(3745)
,结果应该是什么?
var i = 1;
var output1;
var output2;
function swap(input) {
    function func1(input) {
        output2 = input;
        i++;
    }
    function func2(input) {
        output1 = input;
        i = 1;
        alert(String(output1) + "\n" + String(output2));
    }
    if (i === 1) {
        func1(input);
    }
    else if (i === 2) {
        func2(input);
    }
}
while(true) {
    swap(prompt("Enter your first input (this will be your second output):"));
    swap(prompt("Enter your second input (this will be your first output):"));
}