[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Operators/in [Back]  [Original]

in - JavaScript | MDN

Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.

View in English Always switch to English

in

Baseline Widely available

This feature is well established and works across many devices and browser versions. Its been available across browsers since julio de 2015.

El operador in devuelve true si la propiedad especificada est en el objeto especificado o su prototipo.

In this article

Sintaxis

prop in object

Parmetros

prop

Una cadena o expresin nmerica que representa el nombre de una propiedad o el ndice de un array (lo que no sea un smbolo se forzar a string).

object

El objeto (o su cadena de prototipo) sobre el que comprobar si contiene la propiedad con el nombre especificado.

Descripcin

Los siguientes ejemplos muestran algunos de los usos del operador in.

js
// Arrays
var arboles = new Array("secoya", "pino", "cedro", "roble", "arce");
0 in arboles; // devuelve true
3 in arboles; // devuelve true
6 in arboles; // devuelve false
"pino" in arboles; // devuelve false (debe especificar el nmero de ndice,
// no el valor del ndice)
"length" in arboles; // devuelve true (length es una propiedad de Array)

// Objetos predefinidos
"PI" in Math; // devuelve true

// Objetos personalizados
var micoche = { marca: "Honda", modelo: "Accord", ao: 1998 };
"marca" in micoche; // devuelve true
"modelo" in micoche; // devuelve true

Debe especificar un objeto en el lado derecho del operador in. Por ejemplo, puede especificar una cadena creada con el constructor String , pero no puede especificar una cadena literal.

js
var color1 = new String("verde");
"length" in color1; // devuelve true

var color2 = "coral";
"length" in color2; // genera un error (color2 no es un objeto String)

Usando in con propiedades eliminadas o no definidas

Si se elimina una propiedad con el operador delete, el operador in devuelve false para esa propiedad.

js
var micoche = { marca: "Honda", modelo: "Accord", ao: 1998 };
delete micoche.marca;
"marca" in micoche; // devuelve false

var arboles = new Array("secoya", "pino", "cedro", "roble", "arce");
delete arboles[3];
3 in arboles; // devuelve false

Si se cambia una propiedad a undefined pero no se elimina, el operador in devuelve true para esa propiedad.

js
var micoche = { marca: "Honda", modelo: "Accord", ao: 1998 };
micoche.marca = undefined;
"marca" in micoche; // devuelve true
js
var arboles = new Array("secayo", "pino", "cedro", "roble", "arce");
arboles[3] = undefined;
3 in arboles; // devuelve true

Propiedades heredadas

El operador in devuelve true para propiedades en la cadena del prototipo.

js
"toString" in {}; // devuelve true

Especificaciones

Specification
ECMAScript 2027 LanguageSpecification
# sec-relational-operators

Compatibilidad con navegadores

Vea tambin


Web Proxy Viewer  |  New URL  |  Original Page