es6的重点规划

1.ECMAsciopt和JavaScript之间的关系?

        前者是后者的规格,后者是前者的实现. 

2.let的声明特点: 

        1块级作用域   2.不存在变量提升 3.暂时性死区ZDT(会使原有的函数功能失效) 4.let不允许重复声明

3.字符串新增:   ``魔板字符串      ...展开运算符   

4.结构赋值:  es6按照一定的模式,从数组和对象中提取值时,从而对变量进行赋值,就称为构造赋值

5.箭头函数使用的注意事项:

        1.箭头函数不具有自己的this对象

        2.箭头函数不可当做构造函数,也就是说不可对箭头函数使用new命令,否则会抛出错误

        3.不可使用arguments对象,该对象不存在函数体重,如需使用,可用rest参数代替

        4.不可使用yield命令,因此箭头函数不能当做generator函数

5.数组新增:  

          lis.forEach( (v,k)=>{} )                  lis.filter.Each( (v,k)=>{} )

6.Symbol的设定,symbol与symbol for 的区别:

    凡是属性名等于 symbol 类型的值时,都是独一无二的值,同时也可保证不会与其他属性名产          生命名冲突

    Symbol for() 赋值,如果声明之前没有就是独一无二的值,如果有就是相同的值

区别:     

        symbol for会被记载在全局环境中提供搜索,symbol() 不会. 同时symbol for 不会每次调用就返回一个新的 symbol 类型的值,而是会先检查规定的key存不存在,不存在才会新建一个值

二.set与map的操作方式(背下来)

        set的操作方法
                 add(value)        增加
                 delete(value)   删除
                  has(value)      查看
                   clear()          清空
                   size            查看长度

        map的操作方式:

                set( )     添加  ==  set.add()
                get( )     获取
                size( )    长度
                delete( )  删除 
                clear( )   清空

8.set和map 的区别

        都是用来存储数据用的,但是存储的数据格式不同
        set 直接存储 任意类型数据
        map 存储数据的时候,必须以key,value的形式,
        set 使用forEach 遍历的时候,key和value值是一样的
        而map 遍历的时候,key就是存进去的对象的key,value就是存在的值

三.proxy /泼 : K 性:/ 对象

        proxy(泼兴ing)---代理器, 是es6新增的对数据的一种拦截器,即访问对象数据前,必需走过proxy设置的拦截:

       通过构造函数生成:(格式如下)

var proxy = new Proxy( { 源对象 }, { 设置拦截规则 } );

        get获取规则: 格式:

                et(target,key){

                                第一个代表源对象 | 第二个代表指定的下标

          }

        set设置规则: 格式:

        Set(target,key,val){

                        第一个代表源对象 | 第二个代表指定的下标 | 第二个代表指定的值

        }

                

        deleteProperty 删除规则:  地雷他:泼朴体

                deleteProperty(target,key){

                        第一个代表源对象 | 第二个代表指定的下标

              }

     delete  删除对象中指定属性

        Ps: 1.需要通过proxy对象调用才会产生效果  |  2.poxy对象改变时,源对象会跟着一起改变

四 Reflect(瑞服赖特)

Reflect对象与Proxy对象一样,也是 ES6 为了操作对象而提供的新 API.

  1. 以后对象中的方法都会设置到reflect中
  2. 修改对象的返回结果,不会终止代码运行
  3. 统一标准,让操作都变为函数
  4. Reflect与proxy中的方法是一一对应的.使用方便

例子:

        console.log( obj.names );      老

        console.log( Reflect.get(obj,"names") )  新

五 promise(泼肉密思)对象(重点)

promise是异步编程的一种解决方案,让异步写法感觉上为同步 

  1. 回调地狱 :在前一个异步操作的回调函数中调用后一个异步操作,当异步操作越多,这种嵌套的层级也就越复杂,就产生了回调地狱.
  2. Promise状态: (三种状态)

      pending(进行中) |   fulfilled(已成功)|  rejected(已失败)

  3. new Promise( function(resolve, reject) { res代表成功  |  reject代表失败   }  )

    .then(  res=>{  成功  }  )

  4. .catch(  rej=>{  失败 } )

  5. 方法:     Promise.all()      Promise.race()

 iterator(因特瑞特儿)遍历器与 for...of

        目的:  为所有的数据结构提供一个统一的访问机制

ES6 规定,默认的 Iterator 接口部署在数据结构的Symbol.iterator属性,或者说,一个数据结构只要具有Symbol.iterator属性,就可以认为是“可遍历的”

Symbol.iterator属性本身是一个函数,就是当前数据结构默认的遍历器生成函数

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

甜宝小妮儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值