zoukankan      html  css  js  c++  java
  • JavaScript练习题 全局变量 局部变量 作用域

    前沿:大家好我是阿飞本次 任何简单的事情都可以复杂化,本次让我们来做下搞事情的练习题吧

    例题1:
    var a = 1; 
    	function fn1(){		
    		var a = 2; 
    		alert(a);	//2
    	}
    	fn1();
    	alert(a);   //1
    	分析:局内的优先打印变量 局外的打印局外变量 
    
    例题2:
    var a = 1;
    	function fn1(){
    		alert(a);	//1	
    		a = 2;			
    	}
    	fn1();
    	alert(a);   //2
    	分析:因为都是全局变量 所以按照解析顺序从上到下
    
    例题3:
    var a = 1;
    	function fn1(a){  //由于没有实参传入,此刻的形参a默认undefined
    		alert(a);  // undefind		
    		a = 2;     // 此刻因为形参=a 所以a变为局内变量
    	}
    	fn1();
    	alert(a);  //1
    	分析:形参使函数内的全局变量变局部。
    
    例题4:
    var a = 1;
    	function fn1(a){
    		alert(a);	//1   通过实参传给形参 得到a=1
    		a = 2;		// 形参使之变为局内
    	}
    	fn1(a);
    	alert(a);   // 1 
    
    例题5:
    function fn1(a){   //由于没有实参传入,此刻的形参a默认undefined
    		alert(a);	//undefined
    		a = 2;  //此刻因为形参=a 所以a变为局内变量
    	}
    	fn1();
    
    	alert(a); 	//全局变量无法获取到局部变量 此刻全局变量又没有定义声明 所以报错
    
    例题6:
    var a = 1;
    	function fn1(a){
    		alert(a);	//1			
    		a = 2;
    		alert(a);   //2
    	}
    	fn1(a);
    	alert(a);   //1  全局无法获取局内 
    

    只是一个练习而已,搞不懂也没关系。因为本来就不推荐在函数内用全局变量。=.=

  • 相关阅读:
    常见的分布
    ubuntu16.04获取root权限并用root用户登录
    神经网络与深度学习邱锡鹏学习笔记16多项式回归
    什么是公版显卡,什么是非公版显卡
    高考电子监控揭秘
    买了个2手睡袋
    HTML
    又是一天
    我也想去看珠峰
    Qt 主界面菜单栏和状态栏实现
  • 原文地址:https://www.cnblogs.com/anduyinglufei/p/7442267.html
Copyright © 2011-2022 走看看