js变量作用域

js变量作用域

变量的作用范围
根据作用域的不同,将变量分为以下二类:
(1.)全局变量
1.在函数外部定义的变量
2.变量定义时未使用var关键字
3.widdow对象的属性
实例

<script type="text/javascript">
		var a=10;//全局
		function show(){
			console.log(a);//全局变量
		}
		show();


			function show(){
			a=20;//全局变量
			console.log(a);
		}
		show();
		console.log(a);
		
    window.alert('哈哈');//window顶级对象,可省略
    var a=10;//相当于为window对象新增了一个a属性
		var aa=20;
		// console.log(a);
		console.log(window.a);
		console.log(window);

		//相当于为window对象新增了show方法
		function show(){
			console.log('日志');
		}

		window.show();
		</script>

2.局部变量
1.在函数内部定义的变量
实例

var a=10;//全局变量
		function show1() {
			var b=20;//局部变量
			console.log(a);
			console.log(b);
		}
		var a=10;
		function show() {
			var a=20;//局部变量
			console.log(a);//就近原则
		}

		show();
		console.log(a);//全局变量

总结:
1.全局变量生命周期较长,占用内存时间长,不利于回收
2.局部变量生命周期较短,当函数调用完毕时,等待回收,满足快速释放
3.推荐多使用局部变量,少使用全局变量

猜你喜欢

转载自blog.csdn.net/weixin_44391612/article/details/86632879