Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 更新jquery中的全局变量_Javascript_Jquery - Fatal编程技术网

Javascript 更新jquery中的全局变量

Javascript 更新jquery中的全局变量,javascript,jquery,Javascript,Jquery,如何更新jQuery中的变量值?如何在变量值在函数中更新时更新它?我检查了jQuery中变量的范围,但我不明白 <script> $(document).ready(function(){ var s = 9; function data() { var s = 11; } data(); alert(s); }); </script> $(文档).ready(函数(){ var s=9; 函数数据() { var s=11; } 数

如何更新jQuery中的变量值?如何在变量值在函数中更新时更新它?我检查了jQuery中变量的范围,但我不明白

<script>
$(document).ready(function(){
  var s = 9;
  function data()
  {
     var s = 11;
  }
  data();
  alert(s);
});
</script>

$(文档).ready(函数(){
var s=9;
函数数据()
{
var s=11;
}
数据();
警报;
});

我想要11个数据警报,但我得到9个。如果在函数中更新了值,如何更新该值。请帮帮我。

我想你的意思是11而不是80,或者你解释得不对

这里的
s
是全局var,您可以在
data
函数中修改其值。在
data
函数中使用
var s
时,它会创建一个新的变量名
s
,其范围仅限于该函数。这就是为什么9超出了它的范围

$(function(){
    var s = 9;
    function data()
    {
        s = 11; //removed var from here, if you use var here it will...
                //create new variable whose scope will end outside this function.
    }
    data();
    alert(s);
});
推荐阅读:


    • 我想你的意思是11而不是80,或者你解释得不对

      这里的
      s
      是全局var,您可以在
      data
      函数中修改其值。在
      data
      函数中使用
      var s
      时,它会创建一个新的变量名
      s
      ,其范围仅限于该函数。这就是为什么9超出了它的范围

      $(function(){
          var s = 9;
          function data()
          {
              s = 11; //removed var from here, if you use var here it will...
                      //create new variable whose scope will end outside this function.
          }
          data();
          alert(s);
      });
      
      推荐阅读:


      首先,这不是关于jQuery的问题。“$(文档).ready”。。。代码中的包装器与问题无关

      其次,正如我在评论中所说,我假设你问题中的“70”和“80”是错误的,你的意思是说“9”和“11”

      要回答您的问题,您需要在
      s=11
      之前删除
      var
      。此代码应执行您想要的操作:

      var s = 9;
      
      function data()
      {
         s = 11;
      }
      
      data();
      alert(s);
      
      当您添加“var”时,您告诉代码
      s
      应该只存在于当前函数(
      data
      )的作用域内,并覆盖外部作用域中称为“s”的任何其他变量。如果没有“var”,两个
      s
      s表示同一个变量


      我建议您研究“Javascript中的作用域”,并进一步了解“var”和变量作用域是如何工作的。

      首先,这不是关于jQuery的问题。“$(文档).ready”。。。代码中的包装器与问题无关

      其次,正如我在评论中所说,我假设你问题中的“70”和“80”是错误的,你的意思是说“9”和“11”

      要回答您的问题,您需要在
      s=11
      之前删除
      var
      。此代码应执行您想要的操作:

      var s = 9;
      
      function data()
      {
         s = 11;
      }
      
      data();
      alert(s);
      
      当您添加“var”时,您告诉代码
      s
      应该只存在于当前函数(
      data
      )的作用域内,并覆盖外部作用域中称为“s”的任何其他变量。如果没有“var”,两个
      s
      s表示同一个变量


      我建议您研究“Javascript中的作用域”,学习更多关于“var”和变量作用域如何工作的知识。

      您好,我不认为您可以从这个脚本中获得70英寸的警报。 我们不能用这些值在警报中得到80,从这个脚本中,你将在警报框中得到9,因为你将
      var s
      定义为两次,一次是全局的,另一次是私有的,当你要发出警报时,脚本取全局的。您可以使用以下脚本在警报框中获取11:

      <script>
      $(document).ready(function(){
        var s = 9;
      function data()
      {
         s = 11;
      
      }
      data();
      alert(s);
      });
      </script>
      
      
      $(文档).ready(函数(){
      var s=9;
      函数数据()
      {
      s=11;
      }
      数据();
      警报;
      });
      
      嗨,我认为你不能从这个脚本中得到70英寸的警报。 我们不能用这些值在警报中得到80,从这个脚本中,你将在警报框中得到9,因为你将
      var s
      定义为两次,一次是全局的,另一次是私有的,当你要发出警报时,脚本取全局的。您可以使用以下脚本在警报框中获取11:

      <script>
      $(document).ready(function(){
        var s = 9;
      function data()
      {
         s = 11;
      
      }
      data();
      alert(s);
      });
      </script>
      
      
      $(文档).ready(函数(){
      var s=9;
      函数数据()
      {
      s=11;
      }
      数据();
      警报;
      });
      
      我想你的意思是“我想要11个数据警报。但是我得到了9”?从
      s=11
      中删除
      var
      。但是你是如何从中得到70或80的,我没有任何可能的
      var s=11的复制品创建一个局部变量,该局部变量将覆盖全局变量。删除
      var
      关键字以访问全局范围
      s
      。我想你的意思是“我想要11个数据警报。但我得到9个”?从
      s=11
      中删除
      var
      。但是你是如何从中得到70或80的,我没有任何可能的
      var s=11的复制品创建一个局部变量,该局部变量将覆盖全局变量。删除
      var
      关键字以访问全局范围
      s