ECMAScript 2022新内容介绍

110 阅读1分钟

2022年6月22日,第122届Ecma大会批准了ECMAScript 2022语言规范,这意味着它现在已经正式成为一种标准。

这篇博文解释了其中的新内容。


ECMAScript 2022有哪些新内容?

  • 类的新成员。

  • 私有槽检查("私有字段的人体工程学品牌检查")。下面的表达式检查obj 是否有一个私有槽#privateSlot

    #privateSlot in obj
    
  • 模块中的顶层await 。我们现在可以在模块的顶层使用await ,不必再输入异步函数或方法。

  • error.cause:Error 和它的子类现在可以让我们指定是哪个错误导致了当前的错误。

    new Error('Something went wrong', {cause: otherError})
    
  • 可索引值的方法.at() ,让我们在给定的索引处读取一个元素(就像括号运算符[] ),并支持负的索引(与括号运算符不同)。

    > ['a', 'b', 'c'].at(0)
    'a'
    > ['a', 'b', 'c'].at(-1)
    'c'
    

    以下 "可索引 "类型有方法.at()

    • string
    • Array
    • 所有类型的数组类:Uint8Array 等。
  • 正则文件匹配索引。如果我们给正则表达式添加一个标志,使用它就会产生匹配对象,记录每组捕获的开始和结束索引。

  • Object.hasOwn(obj, propKey)提供了一个安全的方法来检查一个对象obj 是否有一个自己的属性,关键是propKey 。与Object.prototype.hasOwnProperty 相比,它适用于所有对象。