简单整理es6遇到的语法

兼容性:ie10+,火狐,谷歌等
低版本浏览器编译转换:在线转换和提前编译(browser.js,引入=》type改成type/babel)
简单整理es6遇到的语法


1.变量声明

var --- 可以重复声明,无法限制修改,没有块级作用域。在es6新出let和const.
let --- 不可重复说明,变量-可以修改,块级作用域
const --- 不可重复声明,常量-不可以修改,块级作用域

2.箭头函数

()=> {}

如果只有一个参数,()可以省略
如果只有一个return {} 可以省略
简单整理es6遇到的语法
eg:调用时show(1,2,3,4,5),…args表示后面传的345

3.解构赋值

简单整理es6遇到的语法
简单整理es6遇到的语法

4.数组新增方法

map --- 映射,一个对一个
1.  let arr= [12,5,8];
	let result = arr.map(item) => return item*2
	alert(result)// 24,10,16
2. let arr [61,24,30,50];
	let result = app.map(item) return item > 60 ?‘及格’ : '不及格'
	alert(result) // 及格,不及格,不及格,不及格

reduce --- 汇总,一堆出来一个

fiflter --- 过滤器
1.  let arr = [12,5,6,9,8,7]
	let result = arr.filter(item => {
		return item % 3 == 0
	})
	console.log(result) // 12,6,9
2. let  arr = [
		{title: '男士衬衫',prise:75},
		{title: '女士衬衫',prise:2505},
		{title: '儿童衬衫',prise:425}
	]
	let result = arr.filter(item=> item.prise >=1000)
	console.log(result)
	// [{title: '女士衬衫',prise:2505},{title: '儿童衬衫',prise:425}]	

forEach --- 循环迭代
1.  let arr = [1,2,3]
	arr.forEach((item,index) => {
		alert(index + ':' + item)
	})

5.字符串

es6 多了两个字符串方法:
startsWidth:返回布尔值,是否以…开始
简单整理es6遇到的语法
endsWidth:返回布尔值,以…结尾
简单整理es6遇到的语法
模板字符串:字符串连接 ${内容}

let abc = 12;
let str = `abc${abc}bc` 
alert(str) // abc12bc

6 面向对象

class关键字,构造器和类分开,class里面直接写方法
简单整理es6遇到的语法

7 promise

消除异步操作,用同步的代码写异步
简单整理es6遇到的语法

8 generator 生成器

函数中间可以暂停,函数可以走走停停,根据需求去设置

function *函数名() {
		代码...
		yield; // 在这里终止
		代码...
}

function* showWords() {
    yield 'one';
    yield 'two';
    return 'three';
}

var show = showWords();

show.next() // {done: false, value: "one"}
show.next() // {done: false, value: "two"}
show.next() // {done: true, value: "three"}
show.next() // {done: true, value: undefined}


function* showWords() {
    yield 'one';
    yield* showNumbers();
    return 'three';
}

function* showNumbers() {
    yield 10 + 1;
    yield 12;
}

var show = showWords();
show.next() // {done: false, value: "one"}
show.next() // {done: false, value: 11}
show.next() // {done: false, value: 12}
show.next() // {done: true, value: "three"}

简单整理es6遇到的语法