--- title: Boolean slug: Web/JavaScript/Reference/Global_Objects/Boolean translation_of: Web/JavaScript/Reference/Global_Objects/Boolean original_slug: Web/JavaScript/Referencia/Objectes_globals/Boolean ---
L'objecte Boolean és un objecte que embolcalla valors booleans.
new Boolean([valors])
valorsBoolean.El valor passat com a primer paràmetre es converteix a un valor booleà, en cas necesari. Si és omés o si és 0, -0, {{jsxref("Global_Objects/null", "null")}}, false, {{jsxref("Global_Objects/NaN", "NaN")}}, {{jsxref("Global_Objects/undefined", "undefined")}}, o la cadena de caràcters buida (""), l'objecte tindrà el valor inicial false. Tots els altres valors, incloent qualsevol objecte o la cadena de caràcters "false", crea un objecte amb el valor inicial de true.
No confoneu els valors Boolean primitius true i false amb els valors true i false de l'objecte Boolean.
Qualsevol objecte el valor del qual no sigui {{jsxref("Global_Objects/undefined", "undefined")}} o {{jsxref("Global_Objects/null", "null")}}, incloent un objecte de tipus Boolean el valor del qual sigui false, evalua a true quan es passa a una sentència condicional. Per exemple, la condició en la següent sentència {{jsxref("Statements/if...else", "if")}} evalua a true:
x = new Boolean(false);
if (x) {
// aquest codi s'executarà
}
Aquest comportament no s'aplica a les primitives de tipus booleà. Per exemple, la condició en la següent sentència {{jsxref("Statements/if...else", "if")}} evalua a false:
x = false;
if (x) {
// aquest codi no s'executarà
}
No creeu una instància de Boolean per a convertir un valor no booleà a un valor booleà. En comptes d'això utilitzeu Boolean com una funció per a realitzar aquesta tasca:
x = Boolean(expression); // utilitzar preferentment x = new Boolean(expression); // no ho utilitzeu
Si s'especifica qualsevol objecte, inclòs un objecte Boolean el valor del qual sigui false, com a valor inicial per a un objecte Boolean, el nou objecte Boolean tindrà un valor de true.
myFalse = new Boolean(false); // valor inicial false
g = new Boolean(myFalse); // valor inicial true
myString = new String('Hello'); // objecte de tipus String
s = new Boolean(myString); // valor inicial true
No utilitzeu un objecte Boolean quan podríeu utilitzar un valor primitiu booleà.
Boolean.lengthBoolean.{{jsOverrides("Function", "Properties", "prototype")}}
L'objecte Boolean no té mètodes propis. Hereta, però, alguns mètodes a través de la cadena de prototipus:
Instàncies de BooleanTotes les instàncies de Boolean hereten de {{jsxref("Boolean.prototype")}}. Com tots els constructors, el prototipus de l'objecte dicta les propietats i mètodes que heretaran les instàncies.
Boolean amb un valor inicial de falsevar bNoParam = new Boolean();
var bZero = new Boolean(0);
var bNull = new Boolean(null);
var bEmptyString = new Boolean('');
var bfalse = new Boolean(false);
Boolean amb un valor inicial de truevar btrue = new Boolean(true);
var btrueString = new Boolean('true');
var bfalseString = new Boolean('false');
var bSuLin = new Boolean('Su Lin');
var bArrayProto = new Boolean([]);
var bObjProto = new Boolean({});
| Especificació | Estat | Comentaris |
|---|---|---|
| ECMAScript 1a Edició. | Standard | Definició inicial. Implementat a JavaScript 1.0. |
| {{SpecName('ES5.1', '#sec-15.6', 'Boolean')}} | {{Spec2('ES5.1')}} | |
| {{SpecName('ES6', '#sec-boolean-objects', 'Boolean')}} | {{Spec2('ES6')}} |
| Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Suport bàsic | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatIE("6.0")}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
| Característica | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Suport bàsic | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |