ES9 是 ECMAScript 2018 的一个版本,它增加了一些新的特性和语法,包括对象、数组和字符串的一些增强。本文将详细介绍这些增强,包括它们的深度和学习意义,并提供示例代码。
对象增强
Rest/Spread 属性
ES9 引入了 Rest/Spread 属性,使得操作对象的属性更加方便。Rest 属性用于将对象中的一组属性提取出来,形成一个新的对象;而 Spread 属性则用于将一个对象中的属性展开到另一个对象中。
----- ------ - - ----- -------- ---- --- -------- --------- -- ----- - ----- ------- - - ------- ------------------ -- ------- ------------------ -- - ---- --- -------- --------- - ----- --------- - - ---------- ------- -------- -- ----------------------- -- - ----- -------- ---- --- -------- ---------- ------- -------- -
Object.fromEntries()
ES9 引入了 Object.fromEntries() 方法,用于将一个包含键值对的数组转换为一个对象。
----- ------- - --------- --------- ------- ---- ----------- ------------ ----- ------ - ---------------------------- -------------------- -- - ----- -------- ---- --- -------- --------- -
数组增强
Array.prototype.flat()
ES9 引入了 Array.prototype.flat() 方法,用于将多维数组转换为一维数组。
----- --- - --- -- --- -- --- ----- ----- ------- - ----------- --------------------- -- --- -- -- -- -- --
Array.prototype.flatMap()
ES9 引入了 Array.prototype.flatMap() 方法,它类似于 map() 和 flat() 方法的组合,用于对数组进行映射和扁平化操作。
----- --- - --------- --------- ----- ---------- - ---------------- -- ---------------- ------------------------ -- ----- ---- ---- ---- ---- ---- ---- ---- ---- ----
Array.prototype.sort()
ES9 对 Array.prototype.sort() 方法进行了优化,使其在处理数值类型的数组时更加高效。
----- --- - --- -- --- ----------- ----------------- -- --- -- --
字符串增强
String.prototype.trimStart() 和 String.prototype.trimEnd()
ES9 引入了 String.prototype.trimStart() 和 String.prototype.trimEnd() 方法,用于去除字符串开头和结尾的空白字符。
----- --- - - ------ ------ -- ----------------------------- -- ------- ------ - --------------------------- -- - ------ -------
String.prototype.padStart() 和 String.prototype.padEnd()
ES9 引入了 String.prototype.padStart() 和 String.prototype.padEnd() 方法,用于在字符串开头或结尾添加指定的字符,直到字符串达到指定长度。
----- --- - -------- ---------------------------- ------ -- ------------ -------------------------- ------ -- ------------
总结
ES9 对对象、数组和字符串进行了一些增强,包括 Rest/Spread 属性、Object.fromEntries()、Array.prototype.flat()、Array.prototype.flatMap()、String.prototype.trimStart()、String.prototype.trimEnd()、String.prototype.padStart() 和 String.prototype.padEnd() 等方法。这些增强使得开发者能够更加方便地操作对象、数组和字符串,提高了开发效率。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/662da6e1d3423812e4b31017