【无标题】

<script>
		//第十三章  es6语法
	//es6的官方叫法  ecmascript2015
	//定义变量   
	//ES6以前   我们定义变量使用var关键字
	//es6   新增了两个定义变量的关键字
	/*
	 .let    => 定义变量
	 .const   =>定义常量(特殊的变量)
	 .
	 
	 
	 .var  会进行预解析
	        .  let/const  不会进行预解析
	 .var  可以声明两个重名的变量
	        .let/const 不能定义重名变量
	 .var 没有块级作用域
	        .let/const  有块级作用域
	        
	 .
	 */
		/*//  1.预解析
		console.log(num)//显示undefined
		var  num = 100
		console.log(num)
		/*
		//定义之前使用 let 声明的变量  会报错
		console.log(num2)//let 定义的变量不存在预解析   会报错
		let num2 = 200
		console.log(num2)
		*/
	*/
	/*
	//定义之前使用 const 声明的变量  会报错   const也不允许声明之前使用
	console.log(num3)//同样会报错
	const num3 = 300
	console.log(num3)
	*/
/*	//2.重复变量名
	var n1 =100
	var n1=200
	console.log(n1)//重复定义 报错
	
	let n2=100
	let n2=200//重复定义  报错
	
	const n3=300
	const n3=300//重复定义 报错
	*/
	// 3.块级作用域
	//任何一个可以执行代码段的{} 都会限制该变量的使用范围
	
	
	
	
	</script>

全部注释了还报错不知道是哪的问题

/*
* 里外都可以正常打印
* if (true){
var num=300
console.log(num)
}
console.log(num)
*/

	/* 
	 * let定义会报错
	 * if (true){
	 	* 因为这个num 使用let 关键字定义的
	 	* 所以只能在这个 if 的{}内使用
	let num=300
	console.log(num)
	}
	console.log(num)*/
	
	/*
	 *  因为这个num 使用let 关键字定义的
	 	* 所以只能在这个 if 的{}内使用
	 if (true){
	const num=300
	console.log(num)
	}
	console.log(num)
	*/

// 4.定义时不赋值
/*let num
console.log(num)//不报错 只是显示 undefined

	num =100
	console.log(num)//正常输出100*/
	
	/*
	//使用const的时候,声明时必须赋值
	const num
	console.log(num)//定义时直接报错
	
	num =100
	console.log(num)
	*/
	//5.修改
	/*let num =100
	console.log(num)
	num =200
	console.log(num)
	正常打印可以被修改
	*/
	
	const num =100
	console.log(num)
	//试图修改num的值,但因为是const定义的 不能修改
	num =200   //重复定义时会报错
	console.log(num)
上一篇:Vue基础第一天之“实例 、模板语法、数据绑定、MVVM、数据代理、事件、计算属性、监听”


下一篇:for循环中in和of区别