方法 Object.fromEntries() 把键值对列表转换为一个对象,这个方法是和 Object.entries() 相对的。
语法:Object.fromEntries(iterable);
返回值:一个由该迭代对象条目提供对应属性的新对象。
描述:Object.fromEntries()
方法接收一个键值对的列表参数,并返回一个带有这些键值对的新对象。这个迭代参数应该是一个能够实现@@iterator
方法的的对象,返回一个迭代器对象。它生成一个具有两个元素的类数组的对象,第一个元素是将用作属性键的值,第二个元素是与该属性键关联的值。
Object.fromEntries()
执行与 Object.entries
互逆的操作。
var arr=[['foo', 1], ['bar', 2]]; var obj=Object.fromEntries(arr); // 打印obj为==={foo: 1, bar: 2}
一、Object的转换操作
//1.对象变二位数组 var obj={a:1,b:2}; var arr=Object.entries(obj); //打印arr为位置数组===》[["a",1],["b", 2 ]] //2.二位数组变为对象 var obj1=Object.fromEntries(arr); //打印obj1为对象{a:1,b:2}
二、Map转Object
const map = new Map() map.set('name', 'jimmy') map.set('age', 18) console.log(map) // {'name' => 'jimmy', 'age' => 18} const obj = Object.fromEntries(map) console.log(obj) // {name: "jimmy", age: 18}
三、过滤
//course表示所有课程,想请求课程分数大于80的课程组成的对象: const course = { math: 80, english: 85, chinese: 90 } const res = Object.entries(course).filter(([key, val]) => val > 80) console.log(res) // [ [ 'english', 85 ], [ 'chinese', 90 ] ] console.log(Object.fromEntries(res)) // { english: 85, chinese: 90 }
标签:map,arr,obj,对象,Object,用途,fromEntries From: https://www.cnblogs.com/zhaofen/p/17175344.html