技术文摘
ES2019 里的 8 个实用功能
ES2019 里的 8 个实用功能
在 JavaScript 的发展历程中,ES2019 带来了一系列实用的新特性,为开发者提供了更多的便利和强大的功能。以下将详细介绍其中 8 个实用的功能。
1. 可选链操作符(Optional Chaining)
可选链操作符(?.)允许我们在访问可能为 null 或 undefined 的对象属性时,避免出现运行时错误。例如,obj?.property 如果 obj 为 null 或 undefined ,则不会抛出错误,而是返回 undefined 。
2. 空值合并操作符(Nullish Coalescing Operator)
空值合并操作符(??)用于在变量为 null 或 undefined 时提供默认值。与 || 不同, ?? 仅在值为 null 或 undefined 时才使用默认值。
3. 正则表达式改进
ES2019 增强了正则表达式的功能。 dotAll 模式 (/s 标志)使得点( . )可以匹配包括换行符在内的任何字符。
4. Array.prototype.flat() 和 Array.prototype.flatMap()
flat() 方法用于将嵌套数组扁平化,而 flatMap() 则是先执行映射操作,然后再进行扁平化。
5. String.prototype.trimStart() 和 String.prototype.trimEnd()
除了 trim() 方法,新增的 trimStart() 和 trimEnd() 分别用于去除字符串开头和结尾的空格。
6. Object.fromEntries()
此方法将键值对列表转换为对象,与 Object.entries() 相对应。
7. 稳定的 Array.prototype.sort()
现在, Array.prototype.sort() 对于相同元素的排序结果是稳定的,这在某些情况下对于保持元素的原始顺序非常重要。
8. Promise.prototype.finally()
finally() 方法允许我们在 Promise 链的末尾添加无论成功或失败都会执行的回调函数。
ES2019 的这些新特性使得 JavaScript 编程更加简洁、高效和安全。开发者们应积极采用这些特性,以提升代码的质量和可维护性。不断探索和应用新的语言特性,将有助于我们在 JavaScript 开发中创造出更优秀的应用和解决方案。
- 每秒 100 万请求下 12306 秒杀业务的架构优化之道
- 怎样从 0 搭建日订单 40 万的智能化派单系统
- 为何 const 不能使 C 代码提速?
- 8 款出色的 Docker 容器监控工具 值得收藏
- IEEE 最新薪资报告:手机开发者年入 153 万 机器学习并非最高
- 为何认为 C 语言无用?并非如此
- 软件架构的五大原则:保障项目百分百成功
- Docker-Compose 命令的使用方法
- 探索设计优质 API 的五大秘籍
- 15 款阿里巴巴程序员常用的开发者工具
- Dockerfiles 编写的卓越实践
- GitHub 上适合初学者的几本 Docker 免费电子书推荐
- Kubernetes 采用的关键要点有哪些?
- 时至今日编码面试缘何依旧糟糕
- PyTorch CPU 到 GPU 张量迁移工具开源,速度超原版 110 倍