JavaScript | Object.fromEntries() 方法
JavaScript 中的Object.fromEntries() 方法是标准的内置对象,用于将键值对列表转换为对象。此方法返回一个新对象,其属性由可迭代的条目给出
句法:
Object.fromEntries( iterable )
参数:此方法接受单个参数iterable ,它包含一个可迭代对象,例如 Array 或 Map 或其他实现可迭代协议的对象。
返回值:此方法始终返回一个新对象,其属性由可迭代的条目给出。
下面的示例说明了 JavaScript 中的 Object.fromEntries() 方法:
示例 1:将地图转换为对象。
const map1 = new Map([ ['big', 'small'], [1, 0] ]);
const geek = Object.fromEntries(map1);
console.log(geek);
const map2 = new Map(
[['Geek1', 'Intern'],
['stipend', 'Works basis']]
);
const geek1 = Object.fromEntries(map2);
console.log(geek1);
输出:
Object { 1: 0, big: "small" }
Object { Geek1: "Intern", stipend: "Works basis" }
示例 2:将数组转换为对象。
const arr1 = [ ['big', 'small'], [1, 0], ['a', 'z' ]];
const geek = Object.fromEntries(arr1);
console.log(geek);
const arr2 = [ ['Geek1', 'Intern'], ['stipend', 'Works basis'] ];
const geek1 = Object.fromEntries(arr2);
console.log(geek1);
输出:
Object { 1: 0, big: "small", a: "z" }
Object { Geek1: "Intern", stipend: "Works basis" }
示例 3:其他转换
const params = 'type=Get_the Value&geekno=34&paid=10';
const searchParams = new URLSearchParams(params);
console.log(Object.fromEntries(searchParams));
const object1 = { val1: 112, val2: 345, val3: 76 };
const object2 = Object.fromEntries(
Object.entries(object1)
.map(([ key, val ]) => [ key, val * 3 ])
);
console.log(object2);
输出:
Object { type: "Get_the Value", geekno: "34", paid: "10" }
Object { val1: 336, val2: 1035, val3: 228 }
支持的浏览器: Object.fromEntries() 方法支持的浏览器如下:
- 谷歌浏览器 73 及以上
- 火狐 63 及以上
- Opera 60 及以上
- Safari 12.1 及更高版本
- Edge 79 及以上