作用域:代码名字(变量)在某个范围内起作用和效果。
1.作用域分为全局作用域和局部作用域。
全局作用域:代码写在整个script标签里的 或是单独的js文件里的
<script>
var num=10;
</script>
局部作用域:代码写在函数内部就是局部作用域,只在函数内部起效果,也称函数作用域。
function fn(){
//局部作用域
}
2.变量
全局变量:在全局作用域下的变量,在全局都可以使用。
局部变量:在局部作用域下的变量,在函数内部的变量,只在函数内部起作用。
注意:在函数内部,没有声明直接赋值的变量也属于全局变量。函数的形参也是属于局部变量。
function fn(){
var num1=10;
num2=20;//此为全局变量,特殊情况
}
fn();
console.log(num2);
3.执行效率
全局变量只有浏览器关闭才会销毁,占内存资源。
局部变量在程序执行完毕就会销毁,节约内存资源。