一旦控制离开脚本,JavaScript静态变量是否仍然存在?
Do JavaScript Static Variables stay present once control leaves the script?
我有一个关于JavaScript中的静态变量的问题。它们是否只在脚本范围内存在?我的意思是,如果控制离开脚本回到html代码,静态变量还在那里吗?
我假设您指的是全局变量而不是静态变量。全局变量在全局文档作用域中声明。它们可以从所有方法(函数)中访问,当你在函数的代码块中修改它们的值时,这个值仍然存在,因为你是在修改全局变量。
例如:<script type="text/javascript">
global_var = 0; // declared globally
function global_inc(){
global_var += 1; // global var incremented by 1
}
function local_inc(){
local_var = global_var; // declared locally, and scope ends at function end.
local_var += 1; // local var incremented by 1
alert('global: ' + global_var);
alert('local: ' + local_var);
}
function alert_global(){
alert('global: ' + global_var);
}
</script>
<script type="text/javascript">
alert_global(); // alert global (0)
global_inc(); // increment global to 1
local_inc(); // set local to global (1) and increment local to (2), alert both
alert_global(); // alert global (1)
</script>
你会得到:
Alert of "global: 0" from alert_global()
local_inc()的"global: 1"警告
local_inc()的"local: 2"告警
Alert of "global: 1" from alert_global()
相关文章:
- 是否可以用变量确认提示警报
- 用真或假初始化变量是否在 Javascript 中建立了内容的方向
- 如何确定套接字中的变量是否匹配
- 如何在JavaScript中检查变量是否为null和/或未定义
- 检查变量是否为字符串的简单方法
- 是否可以在另一个变量中使用未声明的变量
- 它是否创建了许多不利于JavaScript性能的变量
- jade/pug是否可以在include语句中使用变量
- 如何测试变量是否只有字母而不是abc1.关于验证电子邮件
- 如何查看变量名称是否已在Javascript中定义
- 检查是否已设置GET变量
- 在函数参数中使用变量,无论是否使用Jquery
- Chrome扩展:是否有一种方法可以运行JavaScript来获取页面上的内部html,并将其保存到扩展中的变量中
- JavaScript:检查变量是否等于两个或多个值之一的简单方法
- 是否可以在reactjs中设置多个状态变量
- 为什么不允许值为0的变量询问是否存在
- Javascript 测试是否设置了变量
- 是否可以在 Javascript 中将未声明的变量作为参数传递
- 变量/对象是否按值传递,为什么我不能在 javascript 中使用变量更改对象的属性
- 测试JavaScript是否符合异常变量名