技术文摘
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 开发中创造出更优秀的应用和解决方案。
- Web 开发中 Spring Boot 与 Express.js 之比较
- Javascript 面试的开发者视角完美指南
- 中国芯与英特尔AMD的差距及自主的深意
- 程序员必知的浏览器缓存技术
- Python Web 部署的各类方式汇总
- IOTA 模型下“秒算平台”架构实践:Lambda 架构的终结
- 杂谈:我的源码阅读之道,授人以渔
- 数据清洗与预处理入门全指南
- 深度:IT 人专属的《西游记》解读
- 十年阿里架构师带你读懂 Java 源码
- 量子技术能用声波“说话”
- 2019 年国内主流热门的 10 款前端开发框架
- 10 个 Java 开发人员必备的测试工具、库及框架介绍
- 大二学生已着手造编程语言,而你还在纠结学 Python 还是 Java
- Julia 比 Python 快的原因:天生理念更先进