hasOwnProperty en JavaScript

Anika Tabassum Era 12 octubre 2023
  1. Comprobación de hasOwnProperty en objetos en JavaScript
  2. Verificación de hasOwnProperty en Objetos de una Clase
hasOwnProperty en JavaScript

A menudo vemos un dilema con respecto a la convención in y hasOwnProperty, pero ambos funcionan de manera diferente en un caso específico. El concepto principal es que in funciona para objetos que tienen propiedades heredadas y da como resultado true, mientras que hasOwnProperty devuelve verdadero solo para propiedades que no se heredan en lugar de definirse explícitamente.

Aquí, solo hablaremos de hasOwnProperty en JavaScript.

Comprobación de hasOwnProperty en objetos en JavaScript

En JavaScript, la estructura para verificar si una propiedad está definida es así: objectName.hasOwnProprty(property). Aquí, un objeto puede ser un array o puede ser un par clave-valor. Puede consultar la ruta dirigida.

Uso de hasOwnProperty en Array Object en JavaScript

Las matrices se indexan desde 0 y continúan hasta el último elemento disponible. Por lo tanto, preferimos los valores de índice para llamar a la propiedad de un objeto array. El siguiente ejemplo da una idea clara.

Fragmento de código:

var myObj = ['Liza', 'Kary', 'Blake'];

console.log(myObj.hasOwnProperty(2));
console.log(myObj.hasOwnProperty(3));

Producción:

hasownprop on array in javascript

Uso de hasOwnProperty en objetos de par clave-valor en JavaScript

En este sentido, consideraremos un diccionario que tendrá valores clave (cadena) y propiedades (cualquier tipo de datos). Vamos con el siguiente ejemplo:

Fragmento de código:

var myObj = {
  pet : "penguine",
  age : 5,
}

console.log(myObj.hasOwnProperty("age"));
console.log(myObj.hasOwnProperty("color"));

Producción:

hasownprop para obj en javascript

Como puede ver, el objeto myObj tiene solo dos claves: pet y age. Si llamamos solo a estas dos propiedades por la hasOwnProperty veremos que la consola da como resultado true. De lo contrario, llamamos a una propiedad aleatoria color, que da como resultado false.

Verificación de hasOwnProperty en Objetos de una Clase

JavaScript ES6 tiene una característica adicional de clase, y el uso de constructor permite la definición de algunos objetos dinámicos. Mientras que después de declarar los objetos, puede acceder fácilmente a ellos definiendo su valor para ellos. La demostración aclarará la explicación de esta sección. Además, para cualquier valor personalizado, si la propiedad existe dentro del constructor de clase, obtendrá la respuesta true; en caso contrario, false.

Fragmento de código:

class pet {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
}

const pet1 = new pet('Izequel', 5);

console.log(pet1.hasOwnProperty('name'));
console.log(pet1.hasOwnProperty('color'));

hasOwnprop para obj de clase en javascript

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook