技术文摘
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 开发中创造出更优秀的应用和解决方案。
- React 学习第 4 天:开启新征程
- ESLint报错变量未定义 如何正确配置全局变量
- React组件中含as属性的动态HTML标签
- React 与 Vue 如何高效开发浏览器插件并实现热更新
- 非Vue项目中用vue-quill-editor实现纯文本粘贴的方法
- Vue Router history模式部署到不同路径且避免使用相对路径的方法
- Vue 实现分页数据全选功能的方法
- VSCode中点击文件直接跳转而非弹出编辑窗口的方法
- Vue Router history 模式中相对路径与多路径部署冲突的解决办法
- 在非Vue项目中使用vue-quill-editor实现纯文本粘贴功能的方法
- CRXJS Vite Plugin如何提升浏览器插件开发效率
- Vue里怎样实现对已分页后端数据的全选
- VS Code中点击文件直接跳转编辑的方法
- 我对use()钩子的思考:深入剖析React最新实验功能
- ESLint 如何配置以识别全局变量并规避未定义警告