Promise对象

  1. Promise对象:代表了未来某个将要发生的事件(通常是一个异步操作)

  2. 有了promise对象,可以将异步操作以同步的流程表达出来,避免了层层嵌套的回调函数

    ,俗称 '回调地狱'

  3. ES6的Promise 是一个构造函数,用来生成Promise实例

    状态:

    pending:初始化状态

    fullfilled:成功状态

    rejected:失败状态

    使用Promise对象

     //第一步:实例化Promise函数
     var promise = new Promise(function(resolve,reject){})
     ​
     //第二步:then()方法分别制定resolved和rejected状态的回调函数
     promise.then()
    
    ## Symbol运算符
    
    + es6新增的数据类型
    + symbol 为原始数据类型
    + 为了防止命名冲突
 ​
 + 特点:
 ​
   + Symbol属性类型代表唯一
   + Symbol数据类型做比较,返回false
 ​
   + Symbol属性对应值是唯一的,解决命名冲突的问题
 ​
   + Symbol值不能与其他数据进行计算包括同字符串拼串
 ​
     for in, for of 遍历时不会遍历symbol属性
 ​
 ## Iterator遍历器
 ​
 ​
 ​
 作用:
 ​
 1. 是一种接口机制,为各种不同的数据结构提供统一的访问机制
 ​
 使得数据结构的成员能够按某种次序排列
 ​
 2. ES6创造了一种新的遍历命令for..of循环,Iterator接口主要供for..or使用
 3. 支持iterator接口的数据:Array,argument,set容器,map容器,String...
 ​
 ## Generator函数
 ​
 + 是ES6提供的一种异步编程解决方案之一
 ​
 + 是一个状态机,内部封装了不同状态的数据,用来封装不同状态的数据
 ​
 + 用来生成遍历器对象
 ​
 + 可暂停函数(惰性求值)yield可暂停,next方法可启动,每次返回的是yield后的表达式结果
 ​
 + 格式:function *函数名(){
 ​
   yield表达式  "值1",//内部用yield表达式来定义不同的状态
 ​
   yield表达式 "值2",
 ​
   yield表达式 "值3"
 ​
   }
 ​
   + 遇到yield表达式停止,返回{value:yield后的表达式结果/undefined,done:false/true}
   + generator函数返回的是指针对象,而不会执行函数内的逻辑,调用next方法函数内部逻辑开始执行,遇到yield表达式停止,返回..