JavaScript | Propiedades de Symbol.unscopables

La propiedad Symbol.unscopables en Javascript es un símbolo bien conocido que se utiliza para especificar un valor de objeto cuyos nombres de propiedad propios y heredados se excluyen de los enlaces del entorno.

Sintaxis:

object[Symbol.unscopables]

Atributos de propiedad: esta propiedad contiene un objeto y no se puede escribir, enumerar ni configurar.

Valor de retorno: verifique que la variable aparezca en la variable de alcance léxico.

Los siguientes ejemplos ilustran las propiedades de Symbol.unscopables en JavaScript:

Ejemplo 1: si todas las propiedades se establecen en falso.

// JavaScript to illustrate Symbol.toPrimitive  
var obj1 = {   
  val: "Have",   
  val1: "FUN"
};  
obj1[Symbol.unscopables] = {     
  val1: false,      
  val: false   
};  
with (obj1) {  
  console.log(val1);  
}  
with (obj1) {  
  console.log(val);  
}

Producción:

> "FUN"
> "Have"

Ejemplo 2: si alguna propiedad se establece en verdadero.

// JavaScript to illustrate Symbol.toPrimitive  
var obj1 = {   
  val: "Have",   
  val1: "FUN"
};  
obj1[Symbol.unscopables] = {     
  val1: false,      
  val: true   
};  
with (obj1) {  
  console.log(val1);  
}  
with (obj1) {  
  console.log(val);  
}

Producción:

"FUN"
Error: val is not defined

Ejemplo 3:

var list = [];
  
with (Array.prototype) {
  list.push('unscopables');
}
  
console.log(Object.keys(Array.prototype[Symbol.unscopables])); 

Producción:

[
  'copyWithin', 'entries',
  'fill',       'find',
  'findIndex',  'flat',
  'flatMap',    'includes',
  'keys',       'values'
]

Navegadores compatibles: los navegadores compatibles con las propiedades JavaScript Symbol.unscopables se enumeran a continuación:

Publicación traducida automáticamente

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