JavaScript 怎么定义全局变量? 下面本篇文章给大家介绍一下 JavaScript 定义全局变量的方法. 有一定的参考价值, 有需要的朋友可以参考一下, 希望对大家有所帮助.
1, 在 JS 的函数外部用 var 定义一个变量
- var name='测试';
- function XX(){
- alert(name);
- }
2, 函数外部, 不使用 var, 直接给定义变量, 隐式的声明了全局变量
- name='测试';
- function XX(){
- alert(name);
- }
这种方法, 即使该变量是在一个 function 内, 当该 function 被执行后它变成了全局变量 ---- 但是 function 不执行它就不被其他 function 知道, 所以最好定义在 function 外
3, 使用 Windows. 变量名定义为全局变量
但是注意: 调用时候建议写上 Windows. 变量名, 当然也可以不写; 我们常用的 document.getXXX 的 document 对象就是 Windows 的
- Windows.name='测试';
- function XX(){
- alert(Windows.name);
- }
全局变量的优点:
可以减少变量的个数, 减少由于实际参数和形式参数的数据传递带来的时间消耗.
全局变量的缺点:
(1) 全局变量保存在静态存贮区, 程序开始运行时为其分配内存, 程序结束释放该内存. 与局部变量的动态分配, 动态释放相比, 生存期比较长, 因此过多的全局变量会占用较多的内存单元.
(2) 全局变量破坏了函数的封装性能. 函数象一个黑匣子, 一般是通过函数参数和返回值进行输入输出, 函数内部实现相对独立. 但函数中如果使用了全局变量, 那么函数体内的语句就可以绕过函数参数和返回值进行存取, 这种情况破坏了函数的独立性, 使函数对全局变量产生依赖. 同时, 也降低了该函数的可移植性.
(3) 全局变量使函数的代码可读性降低. 由于多个函数都可能使用全局变量, 函数执行时全局变量的值可能随时发生变化, 对于程序的查错和调试都非常不利.
因此, 如果不是万不得已, 最好不要使用全局变量.
更多 web 前端 https://www.html.cn/ 知识, 请查阅 HTML 中文网 !!
来源: http://www.css88.com/qa/javascript/17320.html