JavaScript中的作用域
程序员文章站
2022-03-14 14:30:14
1.全局作用域 JavaScript中,在{}外面的作用域,我们就称之为全局作用域 2.局部作用域 JavaScript中,在函数后面{}中的作用域,我们就称之为局部作用域 3.块级作用域 JavaScript中,只要是没有和函数结合在一起的{}中的作用域, 我们就称之为块级作用域 4.注意点 在块 ......
1.全局作用域
javascript中,在外面的作用域,我们就称之为全局作用域
//全局作用域 var num1 = 123; let num2 = 456; if(...){ ... }
2.局部作用域
javascript中,在函数后面中的作用域,我们就称之为局部作用域
//局部作用域 function test() { console.log("hello world!"); }
3.块级作用域
javascript中,只要是没有和函数结合在一起的中的作用域, 我们就称之为块级作用域
//块级作用域 if (...) { ... } while (...) { ... } do { ... }while (...)
4.注意点
-
在块级作用域中,通过var定义的变量是全局变量,而通过let定义的变量是局部变量
if (true) { //全局变量var num1 = 123; //局部变量 let num2 = 456; } console.log(num1); console.log(num2);
-
在局部作用域中,通过var定义的变量是局部变量,通过let定义的变量也是局部变量
function test() { //局部变量 var num1 = 123; //局部变量 let num2 = 456; } test(); console.log(num1); console.log(num2);
-
无论是在块级作用域还是在局部作用域中,省略定义变量的关键字let或var,那么该变量就会变为全局变量
if(true) { num1 = 123; num2 = 456; } function test() { num3 = 111; num4 = 222; } test(); console.log(num1); console.log(num2); console.log(num3); console.log(num4);
如有错误,还请评论指出
上一篇: 如何使用APK扩展文件