JavaScript logik

JavaScript boolean (logisk) repræsenterer én af to værdier:true eller false.

Boolesk værdi

Normalt har du brug for en data type, der kun kan have én af to værdier, såsom

  • YES / NO
  • ON / OFF
  • TRUE / FALSE

Af denne grund tilbyder JavaScript enBooleandata typer. Den accepterer kun værdier true eller false.

Boolean() funktionen

Du kan bruge Boolean() Funktioner til at afgøre om en udtryk (eller variabel) er sand:

Eksempel

Boolean(10 > 9)        // return true

Prøv det selv

eller endda mere simpelt:

Eksempel

(10 > 9)              // return true også
10 > 9                // return true også

Prøv det selv

Sammenligning og betingelse

Kapitlet om JS sammenligninger viser de fulde sammenligningsoperatorer.

Kapitlet om JS betingelser viser den fulde betingelsessætning.

Her er nogle eksempler:

operator beskrivelse Eksempel
== lig med if (day == "Monday")
> større end if (salary > 9000)
< mindre end if (age < 18)

Booleske værdier er grundlaget for JavaScript's sammenligninger og betingelser.

Alle værdier, der har en 'sand' værdi, er True

Eksempel

100
3.14
-15
"Hello"
"false"
7 + 1 + 3.14
5 < 6 

Prøv det selv

Alle værdier, der ikke har en 'sand' værdi, er False

0 (nul)Boolesk værdi er false:

var x = 0;
Boolean(x);       // return false

Prøv det selv

-0 (negativ nul)Boolesk værdi er false:

var x = -0;
Boolean(x);       // return false

Prøv det selv

"" (tom værdi)Boolesk værdi er false:

var x = "";
Boolean(x);       // return false

Prøv det selv

undefined Boolesk værdi er false:

var x;
Boolean(x);       // return false

Prøv det selv

null Boolesk værdi er false:

var x = null;
Boolean(x);       // return false

Prøv det selv

false Boolesk værdi (som du måske har gættet) er false:

var x = false;
Boolean(x);       // return false

Prøv det selv

NaN Boolesk værdi er false:

var x = 10 / "H";
Boolean(x);       // return false

Prøv det selv

Boolean kan være et objekt

Normalt er JavaScript boolean oprettet som en primær værdi:

var x = false

Men boolean kan også defineres ved nøgleord new Som et objekt defineret:

var y = new Boolean(false)

Eksempel

var x = false;
var y = new Boolean(false);
// typeof x return boolean
// typeof y return object

Prøv det selv

opret ikke booleane objekter. Det vil bremse udførelsen.

new nøgleord vil gøre koden kompleks og føre til nogle uventede resultater:

når brugt == operatorer, er lige booleane ens:

Eksempel

var x = false;             
var y = new Boolean(false);
// (x == y) er true, fordi x og y har ens værdi

Prøv det selv

når brugt === operatorer, er lige booleane ikke ens, fordi === operatorer skal være ens i både type og værdi.

Eksempel

var x = false;             
var y = new Boolean(false);
// (x === y) er false, fordi x og y har forskellige typer

Prøv det selv

eller endnu værre. Objekter kan ikke sammenlignes:

Eksempel

var x = new Boolean(false);             
var y = new Boolean(false);
// (x == y) er false, fordi objekter kan ikke sammenlignes

Prøv det selv

At sammenligne to JavaScript objekter vil altid returnere false.

Komplet Boolean referencehåndbog

For en fuld referencehåndbog, besøg vores JavaScript Boolean referencehåndbog.

Referencehåndbogen indeholder beskrivelser og eksempler på alle booleane egenskaber og metoder.