¿Objetos y constructores de objetos en JavaScript?
En el vivo mundo de la programación orientada a objetos ya sabemos la importancia de las clases y los objetos pero a diferencia de otros lenguajes de programación, JavaScript no tiene las clases tradicionales como se ve en otros lenguajes. Pero JavaScript tiene objetos y constructores que funcionan principalmente de la misma manera para realizar el mismo tipo de operaciones.
- Los constructores son funciones generales de JavaScript que se utilizan con la palabra clave «nuevo». Los constructores son de dos tipos en JavaScript, es decir, constructores incorporados (array y objeto) y constructores personalizados (definen propiedades y métodos para objetos específicos).
- Los constructores pueden ser útiles cuando necesitamos una forma de crear un «tipo» de objeto que se pueda usar varias veces sin tener que redefinir el objeto cada vez y esto podría lograrse usando la función Object Constructor.
Es una convención usar mayúsculas en el nombre de los constructores para distinguirlos de las funciones regulares.
Por ejemplo, considere el siguiente código:
function Automobile(color) { this.color=color; } var vehicle1 = new Automobile ("red");
La función «Automóvil()» es un constructor de objetos, y sus propiedades y métodos, es decir, «color», se declara dentro de ella con el prefijo «esto». Los objetos definidos usando un constructor de objetos se convierten en instantes usando la palabra clave «nuevo».
Cuando se llama a new Automobile(), JavaScript hace dos cosas:
- Crea un nuevo objeto nuevo (instancia) Automobile() y lo asigna a una variable.
- Establece la propiedad del constructor, es decir, el «color» del objeto en Automóvil.
Método
Object.entries() El método Object.entries() se utiliza para devolver una array que consta de pares de propiedades enumerables [clave, valor] del objeto que se pasan como parámetro. El orden de las propiedades es el mismo que se obtiene al recorrer manualmente los valores de propiedad del objeto.
Diferencia entre el método Object.entries() y Object.values()
El método Object.entries() en JavaScript devuelve una array que consta de pares de propiedades enumerables [clave, valor] del objeto que se pasan como parámetro, mientras que el método Object.values() en JavaScript devuelve una array cuyos elementos son los valores de propiedad enumerables encontrados sobre el objeto Siga el ejemplo a continuación para comprender mejor las diferencias entre estas dos funciones.
Input: var object = { 0: '23', 1: 'geeksforgeeks', 2: 'true' }; console.log(Object.values(object)); console.log(Object.entries(object)); Output: Array ["23", "geeksforgeeks", "true"] Array [["0", "23"], ["1", "geeksforgeeks"],["2", "true"]]
Explicación: En el ejemplo anterior, se creó un objeto con tres pares [clave, valor] y el método object.entries() devuelve los pares [clave, valor] del objeto y el método object.values() devuelve los valores encontrados en el objeto.
Aplicaciones:
- Object.entries() se usa para listar propiedades relacionadas con un objeto.
- Object.entries() se usa para enumerar todos los pares [clave, valor] de un objeto.
Sintaxis:
Object.entries(obj)
Parámetros utilizados:
- obj : es el objeto cuyos pares enumerables de propiedad propia [clave, valor] se van a devolver.
Valor devuelto:
- Object.entries() devuelve una array que consta de pares de propiedades enumerables [clave, valor] del objeto pasado.
A continuación se proporcionan ejemplos de la función anterior.
Ejemplos:
Input : const obj = { 0: 'adam', 1: 'billy', 2: 'chris' }; console.log(Object.entries(obj)[1]); Output : Array ["1", "billy"]
Explicación: En este ejemplo, se ha creado un objeto «obj» con tres pares de propiedades [clave, valor] y se utiliza el método Object.entries() para devolver el primer par de propiedades [clave, valor] del objeto.
Input : const obj = { 10: 'adam', 200: 'billy', 35: 'chris' }; console.log(Object.entries(obj)); Output : Array [ ["10", "adam"], ["35", "chris"], ["200", "billy"]]
Explicación: En este ejemplo, se ha creado un objeto «obj» con tres pares de propiedades [clave, valor] y se utiliza el método Object.entries() para devolver todos los pares de propiedades [clave, valor] del objeto.
Los códigos para la función anterior se proporcionan a continuación.
Código 1:
<script> // creating an object constructor // and assigning values to it const obj = { 0: 'adam', 1: 'billy', 2: 'chris' }; // Displaying the enumerable property [key, value] // pairs of the object using object.entries() method console.log(Object.entries(obj)[1]); </script>
PRODUCCIÓN :
Array ["1", "billy"]
Código 2:
<script> // creating an object constructor and // assigning values to it const obj = { 10: 'adam', 200: 'billy', 35: 'chris' }; // Displaying the enumerable property [key, value] // pairs of the object using object.entries() method console.log(Object.entries(obj)); </script>
PRODUCCIÓN :
Array [["10", "adam"], ["35", "chris"],["200", "billy"]]
Excepciones:
- Causa un TypeError si el argumento pasado no es un objeto.
- Provoca un RangeError si la clave pasada en el argumento no está en el rango del par propiedad[clave, valor].
Navegadores compatibles:
- Chrome 54 y superior
- Borde 14 y superior
- Firefox 47 y superior
- Ópera 41 y superior
- Safari 10.1 y superior
Referencia: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/entries
Publicación traducida automáticamente
Artículo escrito por Shubrodeep Banerjee y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA