JavaScript 中的 Object.values()
JavaScript 中的对象和对象构造函数?
在面向对象编程的现实世界中,我们已经知道类和对象的重要性,但与其他编程语言不同,JavaScript 没有其他语言中看到的传统类。但是 JavaScript 有对象和构造函数,它们大多以相同的方式执行相同类型的操作。
- 构造函数是与“new”关键字一起使用的通用 JavaScript 函数。 JavaScript 中的构造函数有两种类型,即内置构造函数(数组和对象)和自定义构造函数(为特定对象定义属性和方法)。
- 当我们需要一种方法来创建可以多次使用的对象“类型”而不必每次都重新定义对象时,构造函数会很有用,这可以使用对象构造函数来实现。将构造函数的名称大写以将它们与常规函数区分开来是一种惯例。
例如,考虑以下代码:
function Automobile(color) {
this.color=color;
}
var vehicle1 = new Automobile ("red");
函数“Automobile()”是一个对象构造函数,它的属性和方法,即“color”是通过在它的前面加上关键字“this”来声明的。使用对象构造函数定义的对象然后使用关键字“new”成为即时对象。
当 new Automobile() 被调用时,JavaScript 做了两件事:
- 它创建一个新的对象(实例)汽车()并将其分配给一个变量。
- 它将对象的构造函数属性(即“颜色”)设置为汽车。
Object.values() 方法
Object.values() 方法用于返回一个数组,其元素是在对象上找到的可枚举属性值。属性的顺序与对象手动给定的顺序相同,只是将循环应用于属性。
Object.values() 将对象作为要返回其可枚举自身属性值的参数,并返回一个包含给定对象的所有可枚举属性值的数组。
应用:
- Object.values() 用于返回简单数组的可枚举属性值。
- Object.values() 用于返回类似对象的数组的可枚举属性值。
- Object.values() 用于返回数组的可枚举属性值,例如具有随机键顺序的对象。
句法:
Object.values(obj)
Parameters Used:
- obj : It is the object whose enumerable property values are to be returned.
Return Value:
Object.values() returns an array containing all the enumerable property values of the given object.
下面提供了上述函数的示例。
例子:
Input : var check = ['x', 'y', 'z'];
console.log(Object.values(check));
Output : Array ["x", "y", "z"]
说明:在本例中,数组“check”具有三个属性值 ['x', 'y', 'z'],object.values() 方法返回该数组的可枚举属性值。属性的顺序与对象手动给定的顺序相同。
Input : var object = { 0: '23', 1: 'geeksforgeeks', 2: 'true' };
console.log(Object.values(object));
Output : Array ["23", "geeksforgeeks", "true"]
说明:在这个例子中,像对象“check”这样的数组具有三个属性值 { 0: '23', 1: 'geeksforgeeks', 2: 'true' } 并且 object.values() 方法返回可枚举的属性值这个数组。属性的顺序与对象手动给定的顺序相同。
Input : var object = { 70: 'x', 21: 'y', 35: 'z' };
console.log(Object.values(object));
Output : Array ["y", "z", "x"]
说明:在这个例子中,像对象“check”这样的数组具有三个随机排序的属性值 { 70: 'x', 21: 'y', 35: 'z' },并且 object.values() 方法返回可枚举此数组的属性值按索引值的升序排列。
下面提供了上述函数的代码。
代码 1:
javascript
javascript
javascript
输出 :
Array ["x", "y", "z"]
代码 2:
javascript
输出 :
Array ["23", "geeksforgeeks", "true"]
代码 3:
javascript
输出 :
Array ["y", "z", "x"]
例外:
- 如果传递的参数不是 object ,则会导致 TypeError。
- 如果一个对象没有作为参数传递给该方法,那么它会说服它并将其视为一个对象。
支持的浏览器:
- 铬 54 及以上
- 边缘 14 及以上
- 火狐 47 及以上
- Opera 41 及以上
- Safari 10.1 及更高版本
参考:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/values