从函数内部返回变量

时间:2015-05-25 01:02:20

标签: javascript function variables return add

var n1;
var n2;
function Restart() {
  n1= Number(prompt("Enter a number", ""));
  n2= Number(prompt("Enter another number", ""));
  return (n1, n2);
}
function Add() {
  n1+n2;
  alert(n1+n2);
}

我怎样才能将变量n1和n2带回函数Restart()?

3 个答案:

答案 0 :(得分:1)

您没有在任何地方致电Restart(),因此很难准确回答。在您编写的代码中,n1n2的范围比RestartAdd的范围更广,因此两个函数都可以访问它们。 return不正确,但幸好不需要。

如果你不喜欢全局变量的想法(这是一个非常好的立场),你可以返回一个结构(一个数组或一个对象)。

  • 如果是数组,return [n1, n2]应该这样做;如果您调用var values = Restart(),则可以n1访问values[0]n2访问values[1]

  • 如果是对象,则执行return { n1: n1, n2: n2 };并以values.n1values.n2

  • 的形式访问它们

修改

  

数组返回[n1,n2]不起作用

肯定会这样。



function Restart() {
  var n1= Number(prompt("Enter a number", ""));
  var n2= Number(prompt("Enter another number", ""));
  return [n1, n2];
}
function Add() {
  values = Restart();
  var n1 = values[0];
  var n2 = values[1];
  alert(n1+n2);
}
Add();




答案 1 :(得分:0)

这有帮助吗?

function Restart() {
  n1= Number(prompt("Enter a number", ""));
  n2= Number(prompt("Enter another number", ""));
  return {"n1":n1, "n2":n2};
}

答案 2 :(得分:0)

我同意第一个答案。代码很好,你只需要调用你的函数:

var n1;
var n2;
function Restart() {
  n1= Number(prompt("Enter a number", ""));
  n2= Number(prompt("Enter another number", ""));
}
function Add() {
  alert(n1+n2);
}
Restart();
Add();