es6关于变量

变量

原来的声明:var 缺点:1. 可以重复声明(导致变量被覆盖),2. 无法限制修改, 3. 没有块级作用域
es6的声明 1.let 不能重复声明,变量可以修改,有块级作用域。2. const 不能重复声明,常量不能修改,有块级作用域。
块作用域的好用,例:

window.onload = function(){

var btn = document.getElementByTagName('input')
//1
for (var i = 0;i<btn.lenght;i++){
	btn[i].onclick = function(){
		alter(i) //由于没有块级作用域 三个按钮都是弹出3
		}	
	}
//2 函数作用域解决
for (var i = 0;i<btn.lenght;i++){
	(function(i){
	btn[i].onclick = function(){
		alter(i) //由于没有块级作用域 三个按钮都是弹出3
		})(i)//有函数作用域,分别弹出,1,2,3
	}
3>let 块级作用域解决
for (let i = 0;i<btn.lenght;i++){
	btn[i].onclick = function(){
		alter(i) //由于有块级作用域 三个按钮分别是1,2,3 。简单粗暴解决了
		}	
}
<input type = 'button'  value = '按钮'>
<input type = 'button'  value = '按钮'>
<input type = 'button'  value = '按钮'>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值