JavaScript | método handler.has()

El método handler.has() en JavaScript se usa para «ocultar» cualquier propiedad que desee. Es una trampa para un operador. Devuelve el valor booleano.
Sintaxis: 
 

const p = new Proxy(target, {
  has: function(target, prop) {
  }
});

Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación: 
 

  • target: este parámetro es el objeto de destino.
  • prop: este parámetro es la propiedad cuya existencia se va a comprobar.

Valor de retorno: este método devuelve un valor booleano verdadero si desea que se acceda a la propiedad.
Los siguientes ejemplos ilustran el método handler.has() en JavaScript:
Ejemplo 1: 
 

javascript

<script>
const handler1 = {
  has (target, key) {
    if (key[1] === '1') {
      return false;
    }
    return key in target;
  }
};
 
const monster1 = {
  p1roperty1: 'GeeksforGeeks',
  property2: 4
};
 
const proxy1 = new Proxy(monster1, handler1);
console.log('property2' in proxy1);
console.log('p1roperty1' in proxy1);
console.log('p1roperty1' in monster1);
</script>

Producción: 
 

true
false
true

Ejemplo 2: 
 

javascript

<script>
var s={ 
  value:1 
} 
var p = new Proxy(s, { 
  has: function(target, prop) { 
    console.log( prop); 
    return false; 
  } 
}); 
console.log('prop' in p);
 
var p1 = new Proxy(s, { 
  has: function(target, prop) { 
    console.log( prop); 
    return true; 
  } 
}); 
console.log('prop' in p1);
</script>

Producción: 
 

"prop"
false
"prop"
true

Navegadores compatibles: los navegadores compatibles con el método handler.has() se enumeran a continuación: 
 

  • Google Chrome 49 y superior
  • Borde 12 y superior
  • Firefox 18 y superior
  • Ópera 36 y superior
  • Safari 10 y superior

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 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 *