ES8 的 Object.values()、Object.entries() 方法,你应该知道的事
在 JavaScript 中,对象是一种非常重要的数据类型。为了更好地操作对象,ES8 引入了两个新的方法:Object.values() 和 Object.entries()。这两个方法可以让我们更方便地遍历对象的属性和值,从而提高编程效率。
Object.values() 方法
Object.values() 方法返回一个包含对象所有可枚举属性值的数组。这个数组的顺序与对象属性的遍历顺序一致。
下面是 Object.values() 方法的语法:
Object.values(obj)
其中,obj 表示要遍历的对象。
下面是一个示例代码:
const obj = { x: 1, y: 2, z: 3 }; const values = Object.values(obj); console.log(values); // [1, 2, 3]
在上面的代码中,我们定义了一个对象 obj,然后使用 Object.values() 方法将 obj 的属性值存储到 values 数组中,并将 values 数组输出到控制台。
需要注意的是,Object.values() 方法只能遍历对象自身的可枚举属性,不能遍历继承的属性。如果需要遍历继承的属性,可以使用 for...in 循环。
Object.entries() 方法
Object.entries() 方法返回一个包含对象所有可枚举属性的键值对数组。这个数组的顺序与对象属性的遍历顺序一致。
下面是 Object.entries() 方法的语法:
Object.entries(obj)
其中,obj 表示要遍历的对象。
下面是一个示例代码:
const obj = { x: 1, y: 2, z: 3 }; const entries = Object.entries(obj); console.log(entries); // [['x', 1], ['y', 2], ['z', 3]]
在上面的代码中,我们定义了一个对象 obj,然后使用 Object.entries() 方法将 obj 的键值对存储到 entries 数组中,并将 entries 数组输出到控制台。
需要注意的是,Object.entries() 方法只能遍历对象自身的可枚举属性,不能遍历继承的属性。如果需要遍历继承的属性,可以使用 for...in 循环。
指导意义
Object.values() 和 Object.entries() 方法可以帮助我们更方便地遍历对象的属性和值,从而提高编程效率。在实际开发中,我们经常需要遍历对象,这两个方法可以让我们更轻松地完成这个任务。
需要注意的是,Object.values() 和 Object.entries() 方法是 ES8 中新增的方法,如果需要兼容旧版本的浏览器,可以使用 polyfill 来实现相同的功能。
总结
本文介绍了 ES8 中的 Object.values() 和 Object.entries() 方法,这两个方法可以帮助我们更方便地遍历对象的属性和值。需要注意的是,这两个方法只能遍历对象自身的可枚举属性,不能遍历继承的属性。在实际开发中,我们可以根据需要选择使用这两个方法来提高编程效率。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65712af5d2f5e1655d9dc977