ES6

ES6:

变量:

var
1:可以重复声明
2:无法限制修改
3:没有块级作用域
let 不能重复声明,变量-可以修改
const 不能重复声明 ,常量-不能修改

函数——箭头函数

function 名字(){
}
()=>{
}

  

1,如果只有一个参数,()可以省;

 

2,如果只有一个return,{ }可以省。

 

函数的参数

1,参数扩展/数组展开

参数的扩展
1,收集参数
function show(a,b,...args){ }
*Rest Parmeter必须是最后一个


2,展开数组
...arr => 1,2,3
*展开后的效果,与直接把数组的内容写出来一样


 

2,默认参数


解构赋值

1,左右两边结构必须一样
2,右边必须是个东西
3,声明和赋值不能分开(必须在一句话里完成)

let [a,b,c] = [12,4,6];
let {a,b,c} = {a:12,b:34,c:8};

数组

map 映射

 

reduce 汇总
算个总数:
[12,8000000,599999] => 80060011
算个平均数:
[12,59,99] => 56.67

filter 过滤器
forEach 循环(迭代)

字符串

1,多了两个新方法
startwith
endwith
2,字符串模板
字符串连接
直接把东西塞到字符串里面 $(东西)
可以折行

ES6的面向对象

1,class关键字,构造器和类分开了
2,class里面直接加方法
继承:
面向对象应用——React
React:
1,组件化——class
2,JSX
JSX==babel==browser.js

json:

1,JSON对象
JSON.stringify
JSON.parse
2,简写:
名字和值(key和value)一样的 留一个就行;
方法:
show:function( ){...} :function一块删
show(){...}
json的标准写法:
1,只能用双引号;
所有的名字都必须用双引号包起来
{"a":12,"b":45}

Promise

基本概念

1,Promise是一个构造函数,所以可以 new 出一个Promise的实例
2,在Promise上有两个函数 resolve(成功之后的回调函数)和 reject(失败后的回调函数)
3,在Promise构造函数的prototype属性上,有一个 .then() 方法。所以只要是Promise构造函数创建的实例,都可以访问到 .then()方法
4,Promise表示一个一步操作,每当我们new一个Promise的实例,这个实例就代表具体的异步操作。
5,Promise创建的实例,是一个异步操作,这个异步操作结果,只有两种结果
状态1:异步执行成功,需要在内部调用成功的回调函数resolve把结果返回给调用者
状态2:异步执行失败,需要在内部调用失败的回调函数reject把结果返回调用者
由于Promise的实例是一个异步操作,所以内部拿到操作结果后,无法使用return把操作结果返回给调用者,这个时候只能使用回调函数的形式,把成功或失败的结果,返回给调用者
6,我们可以在new出来的Promise实例上,调用 .then()方法,预先为这个Promise异步操作,指定成功(resolve)和失败(reject)回调函数

异步操作:

1,回调;
2,Promise
3,generater
//回调

$.ajax({
            url: xxx,
            dateType: 'json',
            success(data1) {
                $.ajax({
                        url: xxx,
                        dateType: 'json',
                        success(data1) {

                        },
                        error()
                        {
                            alter('错了');
                        }
                    });
                    error()
                {
                    alter('错了');
                }
            });

//Promise

 promise.all([
            $.ajax({url: xxx, dataType: 'json'}),
            $.ajax({url: xxx, dataType: 'json'}),
            $.ajax({url: xxx, dataType: 'json'})
        ]).then(results => {

        }, err => {
            alter('错了');
        });

//generator

runnner(function* () {
            let data1 = yield $.ajax({url: xxx, dataType: json});
            let data2 = yield $.ajax({url: xxx, dataType: json});
            let data3 = yield $.ajax({url: xxx, dataType: json});

        });
···

你可能感兴趣的:(ES6)