代码名字(变量)在某个范围内起作用和效果,目的是提高程序的可靠性,更重要的是减少命名冲突。
1.js的作用域
1.1全局作用域:整个script标签,或者一个单独的js文件
1.2局部作用域(函数作用域):在函数内部就是局部作用域,这个代码名字只在函数内部起作用
2.变量的作用域
2.1全局变量:在全局作用域下的变量。在任何一个地方都可以使用,只有在浏览器关闭时才会被销毁,因此比较占内存。
2.2局部变量:只在函数内部使用,当其所在的代码块被执行时,会被初始化;当所有代码运行结束后,就会被销毁,因此更节省内存空间
注意:现阶段js没有块级作用域(es6新增了块级作用域)