📜  JavaScript | Object.fromEntries() 方法

📅  最后修改于: 2022-05-13 01:56:20.500000             🧑  作者: Mango

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 及以上