| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Global_Objects/Object/is | [Back] [Original] |
Get to know MDN better
Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.
This feature is well established and works across many devices and browser versions. Its been available across browsers since septiembre de 2015.
El mtodo Object.is() determina si dos valores son iguales.
Object.is(valor1, valor2);
Este mtodo devuelve un valor de tipo Boolean indicando si los valores pasados como parmetros son iguales o no.
Object.is() determina si dos valores son iguales. Dos valores son iguales si se puede asegurar que:
undefinednulltrue o falseEsta comparacin no es igual a la que realiza el operador ==. El operador == aplica varias coerciones(comprobaciones) en ambos sentidos (si no tienen el mismo Type) antes de probar la igualdad (lo que resulta en comportamientos como "" == false siendo true), pero Object.is no obliga a niguno de los valores.
Esta tampoco es igual a la que realiza el operador ===. El operador === (y el operador ==) trata los valores -0 y +0 como iguales, y adems, trata Number.NaN como no igual a NaN.
Object.is("foo", "foo"); // true
Object.is(window, window); // true
Object.is("foo", "bar"); // false
Object.is([], []); // false
var test = { a: 1 };
Object.is(test, test); // true
Object.is(null, null); // true
// Special Cases
Object.is(0, -0); // false
Object.is(-0, -0); // true
Object.is(NaN, 0 / 0); // true
Object.is() es una adicin propuesta en el estandar ECMA-262; y como tal, puede no estar presente en todos los navegadores. Para los casos en que no tenga disponible este mtodo, podra utilizar este cdigo haciendolo que se cargue antes que cualquier otro script. Esto permite que puedas utilizar Object.is() en los navegadores que no lo llevan includo.
if (!Object.is) {
Object.is = function (x, y) {
// SameValue algorithm
if (x === y) {
// Steps 1-5, 7-10
// Steps 6.b-6.e: +0 != -0
return x !== 0 || 1 / x === 1 / y;
} else {
// Step 6.a: NaN == NaN
return x !== x && y !== y;
}
};
}
| Specification |
|---|
| ECMAScript 2027 LanguageSpecification # sec-object.is |
This page was last modified on 29 may 2026 by MDN contributors.
ObjectObject.assign()Object.create()Object.defineProperties()Object.defineProperty()Object.entries()Object.freeze()Object.fromEntries()Object.getOwnPropertyDescriptor()Object.getOwnPropertyDescriptors()Object.getOwnPropertyNames()Object.getOwnPropertySymbols()Object.getPrototypeOf()groupBy()Object.hasOwn()Object.is()Object.isExtensible()Object.isFrozen()Object.isSealed()Object.keys()Object.preventExtensions()Object.seal()Object.setPrototypeOf()Object.values()Object/FunctionYour blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |