在 JavaScript 中,我们经常需要创建对象。ES9 引入了一个新的方法,Object.fromEntries(),它可以让我们更加快速地创建对象。本文将介绍 Object.fromEntries() 的使用方法和示例,帮助读者更好地掌握这个新特性。
Object.fromEntries() 的使用方法
Object.fromEntries() 方法接收一个键值对的数组作为参数,并返回一个由这些键值对组成的对象。这个方法可以用来快速地创建对象,尤其是在我们需要从数组中创建对象时,非常方便。
下面是 Object.fromEntries() 的语法:
Object.fromEntries(iterable)
其中,iterable 是一个键值对的数组,每个键值对都是一个数组,第一个元素是键,第二个元素是值。
Object.fromEntries() 的示例
下面是一些 Object.fromEntries() 的示例,帮助读者更好地理解这个方法的使用方法和效果。
示例一:从 Map 中创建对象
我们可以使用 Object.fromEntries() 方法从 Map 中创建对象。下面是一个示例:
const map = new Map([ ['foo', 'bar'], ['baz', 42] ]); const obj = Object.fromEntries(map); console.log(obj); // { foo: "bar", baz: 42 }
在这个示例中,我们首先创建了一个 Map 对象,然后使用 Object.fromEntries() 方法从这个 Map 对象中创建了一个对象。最终结果是一个包含了两个属性的对象。
示例二:从数组中创建对象
我们也可以使用 Object.fromEntries() 方法从数组中创建对象。下面是一个示例:
const arr = [['foo', 1], ['bar', 2]]; const obj = Object.fromEntries(arr); console.log(obj); // { foo: 1, bar: 2 }
在这个示例中,我们首先创建了一个二维数组,然后使用 Object.fromEntries() 方法从这个二维数组中创建了一个对象。最终结果是一个包含了两个属性的对象。
示例三:使用 Object.entries() 和 Object.fromEntries() 创建新对象
我们可以使用 Object.entries() 方法将一个对象转换为键值对的数组,然后使用 Object.fromEntries() 方法将这个数组转换回一个新的对象。下面是一个示例:
const obj = { foo: 1, bar: 2 }; const entries = Object.entries(obj); const newObj = Object.fromEntries(entries); console.log(newObj); // { foo: 1, bar: 2 }
在这个示例中,我们首先创建了一个对象,然后使用 Object.entries() 方法将这个对象转换为一个键值对的数组。接着,我们使用 Object.fromEntries() 方法将这个数组转换回一个新的对象。最终结果是一个与原来的对象相同的新对象。
总结
Object.fromEntries() 方法是 ES9 引入的一个新特性,它可以让我们更加快速地创建对象。本文介绍了 Object.fromEntries() 的使用方法和示例,希望对读者有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/65cd86fdadd4f0e0ff6c01d2