Object.entries() Object.values()
prosoal: object values/entries
Object.entries()
- MDN: Object.entries
此方法签名如下:
Object.entries(value : any) : Array<[string,any]>
如果 JavaScript 数据结构具有键和值,条目是一个键值对,被编码为2元数组。Object.entries(x)
强制 x
为一个对象,并返回一个给定对象自己的可枚举属性[key,value]对的数组:
let obj = { one: 1, two: 2 };
for (let [k,v] of Object.entries(obj)) {console.log(`${JSON.stringify(k)}: ${JSON.stringify(v)}`);
}
// Output:
// "one": 1
// "two": 2Object.entries(obj)
// [["one",1],["two",2]]
其键为 symbols 的属性被忽略:
Object.entries({ [Symbol()]: 123, foo: 'abc' });
// [ [ 'foo', 'abc' ] ]
通过 Object.entries() 设置为 Map 对象
Object.entries() 还允许你将一个对象设置为 Map 对象。这比使用2元数组的数组更简洁,但是键只能是字符串。
let map = new Map(Object.entries({one: 1,two: 2,
}));
console.log(JSON.stringify([...map]));
// [["one",1],["two",2]]
也可以处理复杂的数据结构
const info = {name: 'joey',age: 10,getName: function(){return 'hello'},person: {nick: 'yes',getInfo: function(){return false;}}
}
Object.entries(info);
=>
[['name', 'joey'],['age',10],['getName', function],['person',{nick:'yes', getInfo: function}]]
Object.values()
- MDN: Object.values
Object.values()
方法返回一个给定对象自身的所有__可枚举__属性值的数组,值的顺序与使用for…in循环的顺序相同 ( 区别在于 for-in 循环枚举原型链中的属性 )。
此方法签名如下:
Object.values(value : any) : Array<any>
它的工作原理很像 Object.entries() ,但是,正如其名称所示,它只返回自己可枚举的字符串键属性的值:
Object.values({ one: 1, two: 2 }); // [ 1, 2 ]
Object.keys()
- MDN: Object.keys
Object.keys()
方法会返回一个由一个给定对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和正常循环遍历该对象时返回的顺序一致。
常见问题
- 为什么 Object.entries() 的返回值是一个数组而不是一个迭代器?
在这种情况下的相关先例是 Object.keys()
,而不是,例如 Map.prototype.entries()
。
- 为什么 Object.entries() 只返回自己的可枚举的字符串键属性?
再次说明,这样做与 Object.keys()
一致。该方法也忽略其 symbols 键的属性。最终,可能会有一个返回所有属性的 Reflect.ownEntries() 方法。
Object.entries() Object.values()相关推荐
- es6 Object.keys(),Object.values(),Object.entries()
Object.keys(),Object.values(),Object.entries() Object.keys() ES5 引入了Object.keys()方法,返回一个数组,成员是参数对象自身 ...
- Object.keys()、Object.values()、Object.entries()的用法
一.Object.keys(obj) 参数:要返回其枚举自身属性的对象 返回值:一个表示给定对象的所有可枚举属性的字符串数组 处理对象,返回可枚举的属性数组 let person = {name:&q ...
- JavaScript深入理解对象方法——Object.entries()
Object.entries() Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in ...
- linq结果转换object_你知道Object.entries(),但你还知道有Object.fromEntries()吗?
我们得到 object.entries(),它转换一个object → array.但是,如果您想做相反的事情怎么办?不用再想了! 使用 Object.fromEntries() 来array → o ...
- javascript 中Object.entries
参考:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/entries O ...
- Object.entries()方法的使用和实现
1.定义 Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的 ...
- ES6~ES12——Array Includes、Object values、Object entries、Object fromEntries、flat、flatMap、空值合并运算符、可选链等
一.ES7 - Array Includes 在ES7之前,如果我们想判断一个数组中是否包含某个元素,需要通过 indexOf 获取结果,并且判断是否为 -1. 在ES7中,我们可以通过include ...
- Object.keys、Object.values、Object.entries详解
1. Object.keys 返回一个所有元素为字符串的数组,其元素来自于从给定的object上面可直接枚举的属性.这些属性的顺序与手动遍历该对象属性时的一致 // simple array var ...
- ES6语法~解构赋值、箭头函数、class类继承及属性方法、map、set、symbol、rest、new.target、 Object.entries......
2015年6月17日 ECMAScript 6发布正式版本 前面介绍基本语法, 后面为class用法及属性方法.set.symbol.rest等语法. 一.基本语法: 1. 定义变 ...
最新文章
- 论 MySql InnoDB 如何通过插入意向锁控制并发插入
- leetcode算法题--数字序列中某一位的数字
- Python语言学习之pandas:DataFrame二维表的简介、常用函数、常用案例之详细攻略
- 怎么判断一个字符串的最长回文子串是否在头尾_LeetCode5:最长回文子串
- Swift之深入解析枚举enum的底层原理
- .NET 指南:捕获并且抛出标准的异常类型
- php socket 多次发送,php模拟socket 多次发送数据的实现方法
- Flutter ScrollView 滑动组件
- Java 蓝桥杯 分解质因数
- 深度剖析 | 基于大数据架构的BI应用
- java计算list集合中重复对象的次数及for循环内外创建对象
- python界面开发webview_Python+Appium学习篇之WebView处理
- 电脑会在哪些地方暴露你的隐私
- Linux第二周考试题
- 网络安全传输(读书笔记)
- 卡盟销售官网源码php,卡盟整站程序源码 php版
- 专业计算机英语词汇翻译,计算机专业英语词汇与翻译复习题(已完成)
- cad立体图怎么旋转看图_教大家CAD迷你看图如何旋转图纸
- 【软考系统架构设计师】2019年下系统架构师案例分析历年真题
- HTML特效,旋转的正方体