JavaScript Object.values 和 Object.entries 方法的区别
对象是所有 JavaScript 对象继承的父类,这两个方法是 Object 类的静态方法,因此可以通过 Object 类的类名调用。
JavaScript Object.values() 方法
Object.values() 方法按照 for…in 循环的顺序返回对象的可枚举属性值的数组。这是唯一的区别: for…in 循环还会枚举原型链中的属性。
语法:
Object.values(object)
参数: 这个对象是可枚举的,它有自己的属性,其值应该被返回。
返回类型: 值的数组
示例: 用户可以通过按下 ctrl + shift + I,在Chrome浏览器中打开控制台。
Javascript
let fullname = {
firstname: "geeks",
middlename: "for",
lastname: "geeks",
};
let name = Object.values(fullname);
console.log(name);
输出
[ 'geeks', 'for', 'geeks' ]
JavaScript Object.entries() 方法
该方法返回对象可枚举的字符串键属性的键和值的数组。 它的工作方式类似于使用for…in循环进行迭代,但for…in循环还会枚举原型链中的属性。
语法:
Object.entries(object)
参数: 返回对象的可枚举的基于字符串键的属性[key, value]对。
返回值: 这是给定对象的字符串键属性[key, value]对的数组。
示例:
Javascript
let fullname = {
firstname: "geeks",
middlename: "for",
lastname: "geeks",
};
let name = Object.entries(fullname);
console.log(name);
输出
[
[ 'firstname', 'geeks' ],
[ 'middlename', 'for' ],
[ 'lastname', 'geeks' ]
]
object.value和object.entries方法之间的区别:
| object.value | object.entries |
|---|---|
| 它返回特定对象的值数组 | 它返回一个键值对数组的数组 |
| 它返回对象中所有键对应的值数组 | 它返回对象中键值对的数组 |
极客教程