隐式全局变量和暗式全局变量

求教,这两者之间的区别以及函数用法上的区别

阅读 3.8k
3 个回答

隐式的全局变量就是指不通过 var 声明的变量,就算在函数中,不使用 var 声明的变量也是全局变量,而不是函数作用域中的变量。

至于暗示的全局变量,(这种说法很少听过)想来想去,应该是将变量作为 window 对象的属性,如:window.variable = value,这种声明的方式的作用跟隐式的全局变量是一样的,同样在函数中使用的话也是全局变量。

至于不同之处,delete 可以删除由这两种方式创建的全局变量,而不能删除由 var 声明的全局变量。

只要知道一点就行了,不要用全局变量。

严格模式应该是ES5之后JS开发的必选项,确保杜绝万恶之源的隐式全局变量。
因为隐式全局变量除了制造bug,基本上没有任何作用。

"use strict";
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题