ES10 特性的完整指南小结
ECMAScript 2019 (ES10) 是Javascript的第十代标准,为Javascript增加了一些新的特性和语法。本文将对ES10的主要新增特性进行介绍。
Array.prototype.flat()
Array.prototype.flat()
方法可以将一个多维数组变成一个一维数组。它接收一个可选参数depth
,代表需要处理的维度深度。默认深度为1
,即处理第一层的子数组。
const arr = [1, [2, [3, 4]]];
const flattenedArr = arr.flat(2); // [1, 2, 3, 4]
上述代码中,flattenedArr
变量包含 1
、2
、3
、4
四个数值,而不是原来的数组形式。
Object.fromEntries()
Object.fromEntries()
方法会将一个键值对数组转化成一个对象。与之相反的方法是 Object.entries()
,它返回一个键值对数组。
const entries = [
['name', 'Sherry'],
['age', 28],
['location', 'Beijing']
];
const obj = Object.fromEntries(entries);
// { name: 'Sherry', age: 28, location: 'Beijing' }
上述代码中,obj
变量包含了根据 entries
数组生成的对象。
其他新特性
String.prototype.trimStart()
和String.prototype.trimEnd()
,分别表示去除字符串左边和右边的空格。Object.getOwnPropertyDescriptors()
,获取一个对象所有属性的描述符。Symbol.prototype.description
,返回Symbol的描述信息。Array.prototype.flatMap()
,可以先使用map方法,再使用flat方法,最后得到一个结果数组。BigInt
,引入了一种新的基本数值类型BigInt(大整数)。
以上仅是ES10增加功能的一部分,其它还有一些我们没有在此提及。如果要更深入了解,请参考MDN Web文档。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ES10 特性的完整指南小结 - Python技术站