2022前端应该掌握的十个 JS 小技巧

网站建设3年前发布
39 0 0

你知道 0 ?? 1等于多少吗?,大家好,我是 LBJ,今天我们聊聊2022一些值得掌握的新特性!,现在前端发展很快,各种技术和框架层出不穷、百花齐放,很多人都喊学不动啦!事实上JavaScript 作为前端的主要语言,虽然它的发展很快,每年都会出一些新特性,但视乎 JavaScript 开发者的发展速度更快一些,因为很多相对较新的功能都已经有很高的采用率,下面来看看那些具有较高采用率的新特性,2022你应该了解的10个 JS 小技巧,​??运算符是 ES2020 引入,也被称为null判断运算符( Nullish coalescing operator),它的行为类似||,但是更严,​||运算符是左边是空字符串或false0falsy值,都会返回后侧的值。而??必须运算符左侧的值为nullundefined时,才会返回右侧的值。因此0||1的结果为1,0??1的结果为0,例如,浏览器支持情况,​?.也是ES2020 引入,有人称为链判断运算符(optional chaining operator),​?.直接在链式调用的时候判断,判断左侧的对象是否为nullundefined,如果是的,就不再往下运算,返回undefined,如果不是,则返回右侧的值,例如,注:常见写法,浏览器支持情况,我们可以使用 import 语句初始化的加载依赖项,但是静态引入的import 语句需要依赖于 type="module" 的script标签,而且有的时候我们希望可以根据条件来按需加载模块,比如以下场景:,这个时候我们就可以使用动态引入import(),它跟函数一样可以用于各种地方,返回的是一个 promise​,基本使用如下两种形式,浏览器支持情况,其实上面的代码就有用到,顶层 await 允许开发者在 async 函数外部使用 await 字段,因此,浏览器支持情况,​String.prototype.replaceAll()用法与String.prototype.replace()类似,但是replace仅替换第一次出现的子字符串,而replaceAll会替换所有,例如需要替换所有a为A:,浏览器支持情况,为什么使用 Proxy 替代 Object.defineProperty,简单总结Proxy的几点优势,使用也很简单,Proxy本质是构造函数,通过new即可产生对象,它接收两个参数:,例如响应式reactive的基本实现:,浏览器支持情况,​Promise.any 接收一组Promise实例作为参数,写法推荐,或者,浏览器支持情况,ES2020[1] 引入了一种新的数据类型 BigInt,用来表示任意位数的整数,例如,除了使用BigInt来声明一个大整数,还可以使用数字后面加n的形式,如,需要了解BigInt数字操作时的支持情况,以免踩坑,浏览器支持情况,​Array.prototype.at()接收一个正整数或者负整数作为参数,表示获取指定位置的成员,参数正数就表示顺数第几个,负数表示倒数第几个,这可以很方便的某个数组末尾的元素,例如,在类中通过哈希前缀#标记的字段都将被私有,子类实例将无法继承,例如,可以看到,属性privateField和方法privateMethod都被私有化了,在实例中无法获取到,最后,很多新特性都有很多人在用了,特别是???.以及动态引入import(),不知道你都用过哪些?

© 版权声明

相关文章