在 ES9 中,新增了 Object.values() 和 Object.entries() 两个方法,用于遍历对象属性值和键值对。这两个方法的使用非常方便,特别是在前端开发中常常会用到。
Object.values()
Object.values() 方法返回一个由对象的所有值(属性值)组成的数组。这个方法是遍历对象属性值的一种快捷方法。
----- --- - - -- -- -- -- -- - -- ----- ------ - ------------------- -------------------- -- --- -- --
上面的代码中,我们首先定义了一个对象 obj,它有三个属性 a、b 和 c。然后我们使用 Object.values() 方法遍历了 obj 对象的所有属性值,并将这些属性值组成一个数组 values。
值得注意的是,Object.values() 方法只返回对象自身可枚举属性的值。这意味着它不会返回从原型链上继承的属性值。
Object.entries()
Object.entries() 方法返回一个由对象的所有键值对组成的数组。这个方法是遍历对象键值对的一种快捷方法。
----- --- - - -- -- -- -- -- - -- ----- ------- - -------------------- --------------------- -- ------ --- ----- --- ----- ---
上面的代码中,我们首先定义了一个对象 obj,它有三个属性 a、b 和 c。然后我们使用 Object.entries() 方法遍历了 obj 对象的所有键值对,并将这些键值对组成一个数组 entries。
同样,Object.entries() 方法也只返回对象自身可枚举属性的键值对。它不会返回从原型链上继承的键值对。
总结
Object.values() 和 Object.entries() 的增加为开发者提供了更方便、快捷的遍历对象属性值和键值对的方式。在实际开发中,我们可以使用这两个方法节省大量的时间和精力。
不过,在使用这两个方法时需要注意,它们都只返回可枚举属性的值或键值对。如果你需要遍历对象的所有属性或键值对,还需要使用其他方法。
下面是一个示例代码,演示了如何遍历一个对象的所有属性、属性值和键值对:
----- --- - - -- -- -- -- -- - -- -- ---- ------------------------------ -- - ----------------- -- ---- ---- --- --- -- ----- ---------------------------------- -- - ------------------- -- -- -- - --- -- ----- ---------------------------------- ------- -- - -------------------- ----------- -- --- --- --- --- --- -- ---
以上是本文对 ES9 中 Object.values() 和 Object.entries() 的使用技巧的深度讲解和指导意义。希望本文可以对大家进行一些帮助和启发。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/664976b0d3423812e484d4b0