教育改变生活

标题: JS语法ES11(2020)新特性 [打印本页]

作者: 李玮    时间: 2021-4-25 16:42
标题: JS语法ES11(2020)新特性
1. Nullish coalescing Operator(空值处理)
表达式在 ?? 的左侧 运算符求值为undefined或null,返回其右侧。
  1. let user = {
  2.     u1: 0,
  3.     u2: false,
  4.     u3: null,
  5.     u4: undefined
  6.     u5: '',
  7. }
  8. let u2 = user.u2 ?? '用户2'  // false
  9. let u3 = user.u3 ?? '用户3'  // 用户3
  10. let u4 = user.u4 ?? '用户4'  // 用户4
  11. let u5 = user.u5 ?? '用户5'  // ''
复制代码


2. Optional chaining(可选链)
?.用户检测不确定的中间节点
  1. let user = {}
  2. let u1 = user.childer.name // TypeError: Cannot read property 'name' of undefined
  3. let u1 = user.childer?.name // undefined
复制代码


3. Promise.allSettled
返回一个在所有给定的promise已被决议或被拒绝后决议的promise,并带有一个对象数组,每个对象表示对应的promise结果
  1. const promise1 = Promise.resolve(3);
  2. const promise2 = 42;
  3. const promise3 = new Promise((resolve, reject) => reject('我是失败的Promise_1'));
  4. const promise4 = new Promise((resolve, reject) => reject('我是失败的Promise_2'));
  5. const promiseList = [promise1,promise2,promise3, promise4]
  6. Promise.allSettled(promiseList)
  7. .then(values=>{
  8.   console.log(values)
  9. });
复制代码




4. import()
按需导入
5. 新基本数据类型BigInt
任意精度的整数
6. globalThis





欢迎光临 教育改变生活 (http://bbs.goldoar.com/) Powered by Discuz! X3.2