Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for…in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的属性)。

const object1 = {a: 'somestring',b: 42
};for (const [key, value] of Object.entries(object1)) {console.log(`${key}: ${value}`);
}// expected output:
// "a: somestring"
// "b: 42"

语法

Object.entries(obj)

参数

obj
可以返回其可枚举属性的键值对的对象。
返回值
给定对象自身可枚举属性的键值对数组。

描述

Object.entries()返回一个数组,其元素是与直接在object上找到的可枚举属性键值对相对应的数组。属性的顺序与通过手动循环对象的属性值所给出的顺序相同。

示例

const obj = { foo: 'bar', baz: 42 };
console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ]// array like object
const obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.entries(obj)); // [ ['0', 'a'], ['1', 'b'], ['2', 'c'] ]// array like object with random key ordering
const anObj = { 100: 'a', 2: 'b', 7: 'c' };
console.log(Object.entries(anObj)); // [ ['2', 'b'], ['7', 'c'], ['100', 'a'] ]// getFoo is property which isn't enumerable
const myObj = Object.create({}, { getFoo: { value() { return this.foo; } } });
myObj.foo = 'bar';
console.log(Object.entries(myObj)); // [ ['foo', 'bar'] ]// non-object argument will be coerced to an object
console.log(Object.entries('foo')); // [ ['0', 'f'], ['1', 'o'], ['2', 'o'] ]// iterate through key-value gracefully
const obj = { a: 5, b: 7, c: 9 };
for (const [key, value] of Object.entries(obj)) {console.log(`${key} ${value}`); // "a 5", "b 7", "c 9"
}// Or, using array extras
Object.entries(obj).forEach(([key, value]) => {console.log(`${key} ${value}`); // "a 5", "b 7", "c 9"
});

将Object转换为Map

new Map() 构造函数接受一个可迭代的entries。借助Object.entries方法你可以很容易的将Object转换为Map:

var obj = { foo: "bar", baz: 42 };
var map = new Map(Object.entries(obj));
console.log(map); // Map { foo: "bar", baz: 42 }

JS中Object.entries()方法相关推荐

  1. js中的entries方法的使用

    js中的 Object.entries() 方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for-in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环也枚举原型链中的属性 ...

  2. JS中Object的方法汇总,包括assign、create、prototype等等

    JavaScript Object JS的Object到底是啥东西呢?它有啥东西呢? 我们简单知道的,就是new一个Object实例对象,那这个实例对象又何Object又有什么关系呢? 先打印一下看看 ...

  3. php object keys_原生js中Object.keys方法详解

    实际开发中,有时需要知道对象的所有属性,原生js提供了一个方法Object.keys(). Object.keys(obj)返回的是一个数组,该数组的所有元素都是字符串.这些元素是来自于给定的obj可 ...

  4. js中 Object.freeze 方法

    Object.freeze() Object.freeze() 方法可以冻结一个对象,冻结指的是不能向这个对象添加新的属性,不能修改其已有属性的值,不能删除已有属性,以及不能修改该对象已有属性的可枚举 ...

  5. javascript 中Object.entries

    参考:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/entries O ...

  6. js之Object的方法理解

    我们都知道在js里面一切都是对象,window也是个对象,对象里拥有很多属性和方法,可以了解一下对象. 在控制台打印一下Object对象,console.dir(Object),我们可以看到Objec ...

  7. JS中创建对象的方法

    JS中创建对象的方法 最近手头一个项目刚完成,下一个显目还在准备中,趁这个空档期,拿起尘封多年的JS书, 重温一遍JS面向对象程序设计,然后就得出下文,算是一个总结吧. 也许,你会说 "创建 ...

  8. Object.entries()方法的使用和实现

    1.定义 Object.entries()方法返回一个给定对象自身可枚举属性的键值对数组,其排列与使用 for...in 循环遍历该对象时返回的顺序一致(区别在于 for-in 循环还会枚举原型链中的 ...

  9. 请尽可能说出js中数组的方法,最少3个,越多越好

    我接下来要把数组方法全都过一遍,顺手做个整理. 至于为什么整理这个,最近总听说面试经常会问到这个问题, 面试官灵魂发问:请尽可能说出js中数组的方法,最少3个,越多越好 据可靠消息了解到,如果你回答的 ...

最新文章

  1. 袁国勇院士团队纳米孔测序揭示人和禽流感病毒新型检测和监测靶点
  2. 皮一皮:我真的没买这么多...
  3. 002_jQuery语法
  4. ios取两个数之间的随机小数_如果取到小数区间内的任一数字?
  5. 2.2.2 MySQL基本功能与参数文件管理
  6. unity5.x C# 获取屏幕宽度 设置不受重力影响
  7. python开学吧真假,开学第一课,课课有总结
  8. 安卓第一阶段实训项目:基于存储卡音乐播放器(更新中……)
  9. sitecore系统教程之体验编辑器
  10. html css important,css中的important是什么意思?
  11. 如何安装PyCharm【图文详解】
  12. 破解路由器密码并限制和***邻居电脑
  13. Logistic Regression分类器与softmax分类器
  14. 大数据python之简单的网络爬虫代码实现(单一与循环代码进行网络爬虫)
  15. Linux系统添加用户、管理员权限
  16. html如何添加竖虚线,在word中添加竖虚线的方法
  17. 天邑TY1608_S905L3B_支持RTL8822CS、MT7668_线刷/卡刷_刷机固件包
  18. 打印机驱动无法安装到计算机是,打印机后台程序服务没有运行,打印机驱动无法安装,打印机驱动安装失败-中关村在线...
  19. 家庭局域网_组建家庭无线局域网需要哪些硬件设备?
  20. 【大话设计模式】——设计模式概论

热门文章

  1. Android 阿里云镜像整理
  2. c语言浮点数如何精确计算,浮点数精确运算的分析和解决办法
  3. 在英伟达 jeason nano配置yolov5
  4. 7.3 数字化的资产管理
  5. java获取虾米数据_json获取属性值的方式
  6. quill上传本地视频(保姆级教学)
  7. 分布式监控系统WGCLOUD故障自愈能力说明
  8. IOS 7.1 在线安装IPA(OTA无线发布)整理
  9. HTML 学习总结2 框架 表单
  10. 天气预报今天几点下雨_天气预报今天几点下雨【相关词_ 天气预报明天几点下雨】...