ES6核心知识

ES6核心知识

(1)let

使用let声明的变量是块级作用域;可以防止用来计数的循环变量泄露为全局变量(也可以用闭包的知识来实现,如下例)

//泄露情况
var clickBoxs = document.querySelectorAll('.clickBox');
for(var i=0;i<clickBoxs.length;i++){
	clickBoxs[i].onclick = function(){
		console.log(i);
	}
}

//用闭包实现
var clickBoxs = document.querySelectorAll('.clickBox');
for(var i=0;i<clickBoxs.length;i++){
	clickBoxs[i].onclick = iteratorFactory(i);
}

function iteratorFactory(i){
	var onclick = function(e){
		console.log(i);
	}
	return onclick;
}

(2)const

声明常量


(3)class,extends,super

class声明类,extends实现继承(比原型继承清晰多了,与传统静态类型语言类似),调用super方法将父实例赋值给当前this对象。

class Animal{
	constructor(){
		this.type = 'animal';
	}
	says(say){
		console.log('...');
	}
}

class Cat extends Animal{
	constructor(){
		super();
		this.type = 'cat';
	}
}

(4)箭头函数

箭头函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象


(5)模板字符串

很容易添加一段html到文档中,反引号``标识起始,${}来引用变量


(6)解构

ES6允许按照一定的模式,从数组和对象中提取值,对变量进行赋值


(7)defaultrest

//指定默认值
function animal(type = 'cat'){
	console.log(type);
}

//rest
function animals(...types){
	console.log(types);
}
animals('cat','dog','fish'); //["cat","dog","fish"]



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值