Javascript 更新jquery中的全局变量
如何更新jQuery中的变量值?如何在变量值在函数中更新时更新它?我检查了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; } 数
<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);
});
推荐阅读:
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
。