花十分钟,迅速了解ES13的全部特性

lxf2023-05-05 09:34:01

持续创作,加速成长!这是我参与「AdminJS · 6 月更文挑战」的第21天,点击查看活动详情

大家好,我叫小杜杜,自从上次花一个小时,迅速了解ES6~ES12的全部特性后,相信大家对之前的有了一定的了解,其实还差一个ES13的特性,那么今天就讲一讲

声明

我们知道类(即class)的声明需要依靠constructor来基本定义和生成实例,所以在ES13后就不需要这个方法了,即

class Post{ 
    name = '小杜杜';
    age;
    sex
 }

私有字段

之前在TS中讲过这块私有字段,用#代表,如:

class Post{ 
    #name = '小杜杜';
    
    #getName(){
        return #name
    }
 }

静态字段

同时还提供了以 static 的静态公有字段,如:

class Post{ 
    static name = '小杜杜';
    
    static getName(){
        return #name
    }
 }

如果有对类不熟悉的小伙伴,可以看看我之前写的TS,里面非常的详细的讲解了如何使用类的:传送门:类的具体使用

正则

正则这玩意,你要让我写,那我绝不会去写,你让我用,我会抢着用,所以跟之前一样,这个制作为了解

在ES13中,提供了/d 标志,去获取关于输入字符串中每个匹配项开始和索引位置结束的额外信息,如:

    const str = 'test1test2'
    const re= /\d/
    const res = re.exec(str)
    
    console.log(res)

花十分钟,迅速了解ES13的全部特性

然后我们再来看看加入/d的

    const str = 'test1test2'
    const re= /\d/d
    const res = re.exec(str)
    
    console.log(res)

花十分钟,迅速了解ES13的全部特性

可以发现在这里多了一个属性 .indices

async await

我们知道async await都是一起出现的,然而在ES13中提供了顶级 await,简单的说await想要单飞,不要async