JavaScript | Método hasOwnProperty()

El método hasOwnProperty() en JavaScript se usa para comprobar si el objeto tiene la propiedad especificada como propiedad propia. Esto es útil para comprobar si el objeto ha heredado la propiedad en lugar de ser propia.
Sintaxis: 
 

object.hasOwnProperty( prop )

Parámetros: este método acepta un parámetro único que contiene el nombre en forma de string o símbolo de la propiedad a probar.
Valor devuelto: Devuelve un valor booleano que indica si el objeto tiene la propiedad dada como propiedad propia. 
Ejemplo 1: este ejemplo comprueba las propiedades de un objeto.
 

html

<!DOCTYPE html>
<html>
 
<head>
    <title>
        JavaScript | hasOwnProperty() Method
    </title>
</head>
 
<body>
    <h1 style="color: green">
        GeeksforGeeks
    </h1>
 
    <b>
        hasOwnProperty() method in JavaScript
    </b>
     
     
 
<p>
        Click on the button to check if the
        properties are of the object.
    </p>
 
 
     
     
 
<p>Output for own property:
        <span class="outputProperty"></span>
    </p>
 
 
     
     
 
<p>Output for not own property:
        <span class="outputNonProperty"></span>
    </p>
 
 
 
    <button onclick="checkProperty()">
        Check properties
    </button>
     
    <script type="text/javascript">
 
        function checkProperty() {
            let exampleObj = {};
            exampleObj.height = 100;
            exampleObj.width = 100;
 
            // Checking for existing property
            result1 = exampleObj.hasOwnProperty("height");
 
            // Checking for non-existing property
            result2 = exampleObj.hasOwnProperty("breadth");
 
            document.querySelector(".outputProperty").textContent
                        = result1;
             
            document.querySelector(".outputNonProperty").textContent
                        = result2;
        }
    </script>
</body>
 
</html>

Producción: 
 

  • Antes de hacer clic en el botón: 
     

object-before

  • Después de hacer clic en el botón: 
     

object-after

Ejemplo 2: Este ejemplo comprueba las propiedades de un objeto de una clase.
 

html

<!DOCTYPE html>
<html>
 
<head>
    <title>
        JavaScript hasOwnProperty() method
    </title>
</head>
 
<body>
    <h1 style="color: green">
        GeeksforGeeks
    </h1>
     
    <b>
        hasOwnProperty() method in JavaScript
    </b>
     
     
 
<p>
        Click on the button to check if the
        properties are of the object.
    </p>
 
 
     
     
 
<p>Output for own property:
        <span class="outputProperty"></span>
    </p>
 
 
     
     
 
<p>Output for not own property:
        <span class="outputNonProperty"></span>
    </p>
 
 
 
    <button onclick="checkProperty()">
        Check properties
    </button>
     
    <script type="text/javascript">
 
        function checkProperty() {
             
            function Car(a, b) {
                this.model = a;
                this.name = b;
            }
 
            let car1 = new Car("Mazda", "Laputa");
 
            // Checking for existing property
            result1 = car1.hasOwnProperty("model");
 
            // Checking for non-existing property
            result2 = car1.hasOwnProperty("wheels");
 
            document.querySelector(".outputProperty").textContent
                        = result1;
             
            document.querySelector(".outputNonProperty").textContent
                        = result2;
        }
    </script>
</body>
 
</html>

Producción: 
 

  • Antes de hacer clic en el botón: 
     

class-object-before

  • Después de hacer clic en el botón: 
     

class-object-after

Navegadores compatibles: los navegadores compatibles con el método JavaScript hasOwnProperty() se enumeran a continuación:
 

  • Google Chrome 1 y superior
  • Firefox 1 y superior
  • Internet Explorer 5.5 y superior
  • Borde 12 y superior
  • Safari 3 y superior
  • Ópera 5 y superior

Publicación traducida automáticamente

Artículo escrito por sayantanm19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *