ES8(也称为 ECMAScript 2017)引入了一些新的对象转换方法,这些方法可以方便地将对象从一种形式转换为另一种形式。本文将详细介绍这些方法,并提供示例代码以帮助您了解如何使用它们。
Object.entries()
Object.entries()
方法返回一个给定对象自身可枚举属性的键值对数组,其排列顺序与使用 for...in
循环遍历该对象时返回的顺序相同。
示例代码:
const obj = { foo: 'bar', baz: 42 }; console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ]
Object.values()
Object.values()
方法返回一个给定对象自身可枚举属性的值的数组,其排列顺序与使用 for...in
循环遍历该对象时返回的顺序相同。
示例代码:
const obj = { foo: 'bar', baz: 42 }; console.log(Object.values(obj)); // [ 'bar', 42 ]
Object.fromEntries()
Object.fromEntries()
方法接收一个键值对的列表,并返回一个新的对象,其中列表中的每个键值对都对应一个属性和值。
示例代码:
const entries = [ ['foo', 'bar'], ['baz', 42] ]; console.log(Object.fromEntries(entries)); // { foo: 'bar', baz: 42 }
指导意义
这些新的对象转换方法可以帮助开发人员更轻松地进行对象操作。例如,您可以使用 Object.entries()
方法将对象转换为数组,然后使用 Array.prototype.map()
方法对其进行操作。您还可以使用 Object.fromEntries()
方法将数组转换回对象。
这些方法还可以提高代码的可读性。例如,使用 Object.entries()
方法可以将对象转换为键值对数组,以便更容易地遍历其属性。使用 Object.values()
方法可以将对象转换为值的数组,以便更容易地对其值进行操作。
结论
ES8 引入的这些新的对象转换方法为开发人员提供了更多方便和可读性,使对象操作更加轻松。我们建议您在编写 JavaScript 代码时使用这些方法,以提高代码的可读性和可维护性。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67622f10856ee0c1d4fe1477