javascript中全局变量与局部变量有何区别

javascript中全局变量与局部变量有何区别,第1张

javascript中全局变量与局部变量有何区别

区别:1、全局变量的生命周期取决于窗口的创建和销毁,而局部变量的生命周期依赖于函数的调用周期,从开始调用到结束调用;2、全局变量定义在函数外,局部变量定义在函数体内;3、所在的内存不同,全局变量在堆中,而局部变量在栈中。

本教程 *** 作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

局部变量:函数内部 定义的变量称为局部变量。

全局变量:函数外定义的变量就是全局变量。

局部变量和全局变量的区别:

1:作用域不同

局部变量的作用域是当前函数内。

全局的变量的作用域是整个script 标签内。包括函数内。

2: 生命周期不同

局部变量的生命周期,依赖于函数的调用周期,从开始调用到结束调用。

全局变量的生命周期,取决于窗口的创建和销毁。

3:定义的位置不同

局部的定义在函数体内。

全局的定义在函数外。

4:被访问的优先级不同。

如果局部变量和全局变量有重名的,那么在函数内局部变量的被访问的优先级更高。可以通过 window. 去访问全局的变量,或者是 this。

5:所在的内存不同

局部的在栈帧中,栈帧在栈中。

全局的属于window对象的属性,window对象在堆内存中;所以全局的在堆中。

6:被访问的速度不同

局部变量的存取的效率高于全局的。

【相关推荐:javascript学习教程

以上就是javascript中全局变量与局部变量有何区别的详细内容,

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/699786.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-23
下一篇 2022-04-23

发表评论

登录后才能评论

评论列表(0条)

保存