声明提升

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>声明提升</title>
</head>
<body>
	<script>
	//题目1
		/*var str1 = "hello";
		console.log(str1);  */

	//题目2
		/*console.log(str2); //报错
		age = 21;*/

	//题目3
	/*	console.log(str3);// 报错  没有var 不提升
	 str3 = 'hello';	*/

	//题目4

		// console.log(str4); // underfinde  
		// var str4 = 'hello';
	
	//题目5
		// var str5 = "hello";
		// function fn(){
		// 	console.log(str5);//hello
		// }
		// fn();
	
	//题目6
		/*var str6 = "hello";
		function fn(){
			console.log(str6);//hello
			str6 = "world"; // 没有var 不提升
		}
		fn();*/
	//题目7
		/*var str7 = "hello";
		function fn(){
			console.log(str7);//underfind
			var str7 = "world";
		}
		fn();*/
		
	//题目8
		/*var arr1 = [1,2,3];
		function fn(){
			if(typeof arr1 == "undefined"){//type 返回array
				arr1 = [];
			}
			console.log(arr1.length);   //3
		}
		fn();*/
	//题目9
		// var arr2 = [1,2,3];
		// function fn(){
		// 	if(typeof arr2 == "undefined"){ 
		// 		var arr2 = [];  //var 隔着if 提升
		// 	}
		// 	console.log(arr2.length); //0
		// }
		// fn();
		
	//题目10
		// console.log(typeof fn1);//function
		// function fn1(){}
	//题目11
		/*console.log(typeof fn2);//underfind
		var fn2 = function(){}*/
		
	//题目12
		/*var str = "hello";
		function fn(){
			console.log(str);//hello
			function fn1(){
				console.log(str);//underfind
				var str = "world";
				console.log(str);//world
				console.log(this.str);//hello
				function fn2(){
					console.log(str);//world
					str = "world2";
					console.log(str);//world2
					console.log(this.str);//hello
				}
				fn2();
				console.log(str);
				str = "world3";
			}
			fn1();
			console.log(str);
		}
		fn();
		console.log(str);*/





		// var str = 4;
		// function fn(str){
		// 	console.log(str);
		// 	str = 2;
		// 	console.log(str);
		// 	console.log(this.str);
		// 	console.log(str == this.str);
		// }
		// fn(str);
		// console.log(str);
		// function fn(obj){
			// obj.name = "hello";
			// obj = new Object();
			// obj.name = "world";
		// 	console.log(obj.name);
		// }
		// var person = new Object();
		// fn(person);
		// console.log(person.name);
		// console.log(person instanceof Object); 

	</script>
</body>
</html>

  

posted @ 2017-03-04 10:18  motian  阅读(151)  评论(0编辑  收藏  举报