当前位置: 移动技术网 > IT编程>开发语言>JavaScript > JavaScript中的作用域

JavaScript中的作用域

2020年04月07日  | 移动技术网IT编程  | 我要评论

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);
    

    在这里插入图片描述 如有错误,还请评论指出

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网