美文网首页
JavaScript 全局变量的声明方法

JavaScript 全局变量的声明方法

作者: Ella_Eric | 来源:发表于2020-11-23 10:22 被阅读0次

转自:JS中如何定义全局变量

1.在js的function外定义一个变量


var name='测试';

function XX(){

       alert(name);

}

2.不使用var,直接给定义变量,隐式的声明了全局变量

name='测试';

function XX(){

  alert(name);

}

这种方法,即使该变量是在一个function内,当该function被执行后它变成了全局变量 ---- 但是function不执行它就不被其他function知道,所以最好定义在function外

3.使用window.变量名定义为全局变量

但是注意:调用时候建议写上window.变量名,当然也可以不写;我们常用的document.getXXX的document对象就是window的

window.name='测试';

function XX(){

  alert(window.name);

}

全局变量的优点:

可以减少变量的个数,减少由于实际参数和形式参数的数据传递带来的时间消耗。

全局变量的缺点:
(1)全局变量保存在静态存贮区,程序开始运行时为其分配内存,程序结束释放该内存。与局部变量的动态分配、动态释放相比,生存期比较长,因此过多的全局变量会占用较多的内存单元。
(2)全局变量破坏了函数的封装性能。函数象一个黑匣子,一般是通过函数参数和返回值进行输入输出,函数内部实现相对独立。但函数中如果使用了全局变量,那么函数体内的语句就可以绕过函数参数和返回值进行存取,这种情况破坏了函数的独立性,使函数对全局变量产生依赖。同时,也降低了该函数的可移植性。
(3)全局变量使函数的代码可读性降低。由于多个函数都可能使用全局变量,函数执行时全局变量的值可能随时发生变化,对于程序的查错和调试都非常不利。
因此,如果不是万不得已,最好不要使用全局变量。

相关文章

  • JavaScript 全局变量的声明方法

    转自:JS中如何定义全局变量[https://blog.csdn.net/yboker/article/detai...

  • JSP一些小知识点

    声明定义全局变量和方法<%!声明变量声明方法%> 动作useBeansetPropertygetProperty ...

  • 微信小程序变量

    在JavaScript中有三种声明变量的方式:var、let、const。var:声明全局变量,let:声明块级变...

  • JS中声明三种变量的方式

    在JavaScript中有三种声明变量的方式:var、let、const。 1、var var:声明全局变量,换句...

  • JavaScript基础

    全局变量和局部变量 方法内部用var声明的变量是局部变量,方法外部用var声明或者方法内部不加var的都是全局变量...

  • let和var以及const有什么区别

    在JavaScript中有三种声明变量的方式:var、let、const。 var:声明全局变量,换句话理解就是,...

  • javascript中有var和没var的区别

    在javascript中的变量声明的作用域是以函数为单位,所以我们经常见到避免全局变量污染的方法是 在函数内部,有...

  • javascript之为什么要用let代替var

    javascript中用 var 声明变量,存在以下问题: 声明的变量为全局变量(被誉为JS最大设计缺陷之一): ...

  • 编写可维护的javascript的总结

    最小全局变量 javascript通过函数管理作用域,函数内部声明的变量只能在函数内部访问,全局变量是在任何函数外...

  • JavaScript闭包个人愚见

    js的变量大体分为全局变量,局部变量 不使用var声明变量默认为全局变量。JavaScript上级函数无法对子函数...

网友评论

      本文标题:JavaScript 全局变量的声明方法

      本文链接:https://www.haomeiwen.com/subject/svymiktx.html