啸羽程序园
JavaScript教程学习编程语言项目笔记首页

关于js全局变量的问题–切勿滥用!切勿滥用!切勿滥用!

关于js全局变量的问题–切勿滥用!切勿滥用!切勿滥用!重要的事情说三遍。

这是一个很深的坑,自己挖坑自己跳。有时候用全局变量,哇在哪都能用真方便,但是全局变量有一个十分十分需要重要的注意事项,在哪都能改,拿最近我在extjs中遇到的坑举例,不同view下要同时维护,变量冲突,名字相同,全局变量会出现各种各样的紊乱问题,最近重构项目发现有个store关闭窗口再打开就多加载一次,就是因为store是全局的,窗口重新初始化了,store多了一份,同一个名称下有多个store,load一次可能加载十次八次然而你却查不出来。变量不只是一个简单的值,还可以是函数还可以是store还可以是窗口,如果这样的变量声明成全局的,开始发现一个窗口到处复用真方便,呵呵呵呵,等项目复杂了,窗口(等等变量)逻辑复杂了,窗口复用多了问题就出来了,窗口之间的互相切换,全局变量维护起来相当麻烦,项目越复杂,全局变量的维护成本越高,总之 ,切勿滥用!特意发一篇牢骚文章备忘,血的教训浪费大把时间来验证平时觉得十分不以为然的一句话。

Hi, I’m shen, 啸羽