EWS6-新特性

  1. let 与 const let 声明的变量只在 let 命令所在的代码块内有效。 const
    声明一个只读的常量,一旦声明,常量的值就不能改变

  2. 解构赋值
    let [a, b, c] = [1, 2, 3]; let {a, b, …rest} = {a: 10, b: 20, c:
    30, d: 40};

  3. Symble
    使用 Symbol 定义常量,这样就可以保证这一组常量的值都不相等 Symbol.for() 类似单例模式

  4. Map 与 Set

  5. Reflect 与 Proxy

  6. 字符串扩展方法
    includes():返回布尔值,判断是否找到参数字符串
    startsWith():返回布尔值,判断参数字符串是否在原字符串的头部
    endsWith():返回布尔值,判断参数字符串是否在原字符串的尾部
    repeat():返回新的字符串,表示将字符串重复指定次数返回
    标签模板:Hello world!

  7. 对象 对象字面量 ,属性的简洁表示法 , 对象的拓展运算符: … , 对象的新方法 Object.assign(target, source_1, ···) , Object.is(value1, value2)

  8. 数组创建
    Array.of()

  9. 将类数组对象或可迭代对象转化为数组: Array.from()

  10. 函数
    默认参数:function fn(name,age=17){}
    不定参数:function f(…values){}
    箭头函数:var f = (a,b) => {let result = a+b; return result; },没有this指向

  11. Class 类
    类定义不会被提升,prototype 仍旧存在,共享原型对象
    decorator 是一个函数,用来修改类的行为

function testable(target) {
    target.isTestable = true;
}
@testable
class Example {}
Example.isTestable; // true

    通过 extends 实现类的继承。super。不可继承常规对象。

  1. 模块
    ES6 的模块化分为导出(export) @与导入(import)两个模块。
  2. Promise 状态
            Promise 异步操作有三种状态:pending(进行中)、fulfilled(已成功)和 rejected(已失败)。除了异步操作的结果,任何其他操作都无法改变这个状态
    状态的缺点
            缺点:无法取消 Promise ,一旦新建它就会立即执行,无法中途取消。
    如果不设置回调函数,Promise 内部抛出的错误,不会反应到外部。
    当处于 pending 状态时,无法得知目前进展到哪一个阶段(刚刚开始还是即将完成)
    then 方法接收成功resolve,失败reject作为回调参数
    特点: JavaScript 事件队列的当前运行完成之前,回调函数永远不会被调用
    自己实现个demo:(利用js微任务在弘任务之后执行)
    在这里插入图片描述
  3. Generator
    可以通过 yield 关键字,把函数的执行流挂起,为改变执行流程提供了可能,从而为异步编程提供解决方案
  4. async
    async 函数返回一个 Promise 对象,可以使用 then 方法添加回调函数。
    await 操作符用于等待一个 Promise 对象, 它只能在异步函数 async function 内部使用
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值