node - Javascript, ¿qué es la propiedad en hasOwnProperty?
hasownproperty typescript (7)
Aquí hay una respuesta breve y precisa:
En javascript, cada objeto tiene un grupo de pares clave-valor integrados que tienen metainformación sobre el objeto. Cuando recorre todos los pares clave-valor usando for...in
construir / bucle para un objeto, también está recorriendo estos pares clave-valor de metainformación (que definitivamente no quiere).
El uso de hasOwnPropery(property)
filtra estos bucles innecesarios a través de metainformaciones y comprueba directamente que la property
del parámetro es la propiedad dada por el usuario en el objeto o no. Por los filtros de salida , quiero decir, que hasOwnProperty(property)
no mira si la property
existe en la cadena de prototipos de Object también conocida como metainformación.
Devuelve booleano true/false
función de eso.
Aquí hay un ejemplo:
var fruitObject = {"name": "Apple", "shape": "round", "taste": "sweet"};
console.log(fruitObject.hasOwnProperty("name")); //true
console.log(Object.prototype.hasOwnProperty("toString");) //true because in above snapshot you can see, that there is a function toString in meta-information
¡Espero que esté claro!
If( somevar.hasOwnProperty(''someProperty'') ) {
// do something();
} else {
// do sometingelse();
}
¿Cuál es el uso / explicación hasOwnProperty(''someProperty'')
de hasOwnProperty(''someProperty'')
?
¿Por qué no podemos simplemente usar somevar.someProperty
para comprobar si un objeto somevar
contiene propiedad con el nombre someProperty
?
¿Qué es una propiedad en este caso?
¿Qué propiedad verifica este javascript?
También escribí este componente object-hasOwnProperty reutilizable object-hasOwnProperty que devuelve un valor booleano para verificar si el objeto tiene una propiedad especificada. Tiene 2 ejemplos y 3 pruebas que pueden ayudar a comprender mejor el comportamiento real de los casos de uso.
Ejemplos:
hasOwnProperty({foo: ''bar''}, ''foo'') // => true
hasOwnProperty({foo: ''bar''}, ''bar'') // => false
Casos de uso probados:
hasOwnProperty() should return false as given object do not contain key `bar`
hasOwnProperty() should return true as given object contains key `foo`
hasOwnProperty() should return false if key is null
Aquí es cómo funciona:
function hasOwnProperty(obj: {}, prop: string|number): boolean {
return Object.prototype.hasOwnProperty.call(obj, prop);
};
Utiliza object.hasOwnProperty ( p ) para determinar si el objeto tiene una propiedad enumerable p -
objeto puede tener su propio prototipo, donde los métodos y atributos ''predeterminados'' se asignan a cada instancia de objeto. hasOwnProperty devuelve verdadero solo para las propiedades que se establecieron específicamente en el constructor o se agregaron a la instancia más tarde.
para determinar si p se define en absoluto, en cualquier lugar, para el objeto, use if ( p instancia de objeto), donde p evalúa una cadena de nombre de propiedad.
Por ejemplo, de forma predeterminada, todos los objetos tienen un método ''toString'', pero no aparecerá en hasOwnProperty.
comprueba:
Devuelve un valor booleano que indica si un objeto tiene una propiedad con el nombre especificado
El método hasOwnProperty devuelve verdadero si el objeto tiene una propiedad del nombre especificado, falso si no lo tiene. Este método no verifica si la propiedad existe en la cadena de prototipos del objeto; la propiedad debe ser un miembro del objeto en sí.
Ejemplo:
var s = new String("Sample");
document.write(s.hasOwnProperty("split")); //false
document.write(String.prototype.hasOwnProperty("split")); //true
hasOwnProperty es una función normal de Javascript que toma un argumento de cadena.
En su caso somevar.hasOwnProperty (''someProperty'') comprueba que la función somevar tiene alguna propiedad o no, devuelve verdadero y falso
Decir
function somevar() {
this.someProperty= "Generic";
}
function welcomeMessage()
{
var somevar1= new somevar();
if(somevar1.hasOwnProperty("name"))
{
alert(somevar1.hasOwnProperty("name"));// it will return true
}
}
developer.mozilla.org/en/JavaScript/Reference/Global_Objects/… . Funciona igual que if(obj.prop)
, hasta donde yo sé.
hasOwnProperty
devuelve un valor booleano que indica si el objeto al que lo llama tiene una propiedad con el nombre del argumento. Por ejemplo:
var x = {
y: 10
};
console.log(x.hasOwnProperty("y")); //true
console.log(x.hasOwnProperty("z")); //false
Sin embargo, no mira la cadena prototipo del objeto.
Es útil usarlo cuando enumera las propiedades de un objeto con el for...in
constructo.
Si desea ver todos los detalles, la especificación ES5 es, como siempre, un buen lugar para buscar.