js统一全局变量

js统一全局变量      前言:js中难免要用到全局变量,但是过多的全局变量会影响js的性能,在此我创造了一个统一全局变量的写法,只需要这一个全局变量即可/***全局变量管理器*/varoverallManager=(function(){ //存储全局变量,闭包保护不受污染 varoverall={}; /** *@paramname *…

大家好,又见面了,我是你们的朋友全栈君。

       前言:js中难免要用到全局变量,但是过多的全局变量会影响js的性能,在此我创造了一个统一全局变量的写法,只需要这一个全局变量即可

/**
 * 全局变量管理器
 */
var overallManager = (function() {

	// 存储全局变量,闭包保护不受污染
	var overall = {};

	/**
	 * @param name
	 *            全局变量名称
	 * @param value
	 *            全局变量值
	 */
	return function(name, value) {
		// 首先保证有传参
		if (arguments.length == 0) {
			return null;
		}
		// 上一句已经保证至少传入一个name,这里保证name是String类型
		name = String(name);
		// 不传value为get方法
		if (value === undefined) {
			return overall[name];
		}
		// 传value为set方法
		overall[name] = value;
	};
})();

使用情况截图:

js统一全局变量

      如果不知道某个名字的全局变量有没有被定义过,可以通过get方法判断其值是否为undefined,如图所示。

      这样的话一个js用overallManager这一个全局变量就可以了。甚至可以把它放进基js,所有js都引它,可以通过不同js全局变量的变量名前面加上js文件名前缀的方式去有效避免全局变量名的重复,实现所有全局变量的大一统。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/139960.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • __setattr__,setattr(),getattr__,getattr()及__getattribute__的区别

    __setattr__,setattr(),getattr__,getattr()及__getattribute__的区别Python2.7IDEPycharm5.0.3首先,给一波定义__setattr__(self,name,value)#当试图给特性name赋值时候自动被调用,其余方法同理#相当于触发机制__getattribute__(self,item)#每次通过实例化访问属性都会通过该函数#如果没有该属性,则访问完该函数后,再会通过__getattr__函数_setattr_和_get

    2025年6月23日
    4
  • 打开python 报R6034 错误

    打开python 报R6034 错误我只在Python3和python2同时在anaconda3下安装出现的问题,后来移除python2也不起作用,找到了这个方法,解决的问题。6034指的是:”AnapplicationhasmadeanattempttoloadtheCruntimelibraryincorrectly.Pleasecontacttheapplication’ssuppor…

    2025年8月3日
    4
  • win10下安装PyCharm以及激活

    win10下安装PyCharm以及激活【在此之前先安装好python】1.PyCharm是什么?PyCharm是一种PythonIDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具。PyCharm拥有一般IDE具备的功能,比如,调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制另外,PyCharm还提供了一些很好的功能用于Django开发,同时支持Google…

    2022年8月26日
    8
  • Windows日志分析工具_Windows7激活工具

    Windows日志分析工具_Windows7激活工具Windows主要有以下三类日志记录系统事件:应用程序日志、系统日志和安全日志系统日志:%SystemRoot%\System32\Winevt\Logs\System.evtx记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。应用程序日志:%SystemRoot%\System32\Winevt\Logs\Application.evtx包含由应用程序或系统程序记录的事件,主要记录程序运行程序方面的事件。安全日志:%SystemRoot%\Syste

    2025年9月2日
    8
  • html标签<td><tr><th>全称及缩写说明[通俗易懂]

    html标签<td><tr><th>全称及缩写说明[通俗易懂]<td>是tabledatacell的缩写,单元格<tr>是tablerow的缩写,表格中的一行<th>是tableheadercell的

    2022年8月2日
    8
  • acwing-395. 冗余路径(Tarjan双连通分量)

    acwing-395. 冗余路径(Tarjan双连通分量)为了从 F 个草场中的一个走到另一个,奶牛们有时不得不路过一些她们讨厌的可怕的树。奶牛们已经厌倦了被迫走某一条路,所以她们想建一些新路,使每一对草场之间都会至少有两条相互分离的路径,这样她们就有多一些选择。每对草场之间已经有至少一条路径。给出所有 R 条双向路的描述,每条路连接了两个不同的草场,请计算最少的新建道路的数量,路径由若干道路首尾相连而成。两条路径相互分离,是指两条路径没有一条重合的道路。但是,两条分离的路径上可以有一些相同的草场。对于同一对草场之间,可能已经有两条不同的道路,你也可以

    2022年8月9日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号