如何在函数调用中处理javascripts中的变量?

时间:2016-04-20 12:10:23

标签: javascript jquery

如果我的函数中有某个变量,例如

  var test = 3; 

  function looper(){

     var testing = 1;
     testing += testing;

  }

  for (var i=0;i<=10,i++){

     looper();

     alert(test);

  }

如果在循环中调用了这个函数,每个都会得到测试值为2或者它是否更新为最后执行的值?我可以获取传递给函数的测试变量的值,还是需要将其作为参数传递?

4 个答案:

答案 0 :(得分:0)

  

旁边可以获得传递给函数的测试变量的值   或者需要将其作为参数传递?

是的,试试

Dim Result As Variant
Result = Split("Alice,Bob,Chuck,Dave", ",") 'Result: {"Alice,"Bob","Chuck","Dave"}
Result = Split("Alice,Bob,Chuck,Dave", ",", 2) 'Result: {"Alice,"Bob"}

答案 1 :(得分:0)

你有var testing = 1;所以即使循环也总是一遍又一遍地实例化为1

您应将其移出功能范围:

  var testing = 3;  // NOT "test" but "testing"!!!!!

  function looper(){
      testing += testing;
  }

  for (var i=0;i<=10,i++){
       looper();
  }

  alert(testing);   // "testing", remember?

答案 2 :(得分:0)

变量测试是全局声明的,因此值3显示在alert上。 在每次调用函数looper的情况下,创建变量测试而不保留先前的值并以此方式分配值1,在函数调用中测试值始终为2。

答案 3 :(得分:-2)

var test = 3; 
var testing = 1;

function looper(){
     testing += testing;
     return testing;
}
for (var i=0;i<=10,i++){
    test = looper();
    alert(test);
}