bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/JavaScript/JavaScript Foundations
JavaScript•JavaScript Foundations

JavaScript Booleans

The Boolean Data Type

In JavaScript, a Boolean is a primitive data type that can only have one of two values:

true or false

The Boolean value of an expression is the basis for all JavaScript comparisons and conditions .

Key Boolean Characteristics

  • true and false are boolean data types
  • true and false are the only possible boolean values
  • true and false must be written in lowercase
  • true and false must be written without quotes

Boolean Use Cases

Very often, in programming, you will need a data type that can represent one of two values, like:

  • yes or no
  • on or off
  • true or false

Boolean values are fundamental for logical operations and control flow in JavaScript programming.

Comparisons

All JavaScript comparison operators (like ==, !=, <, >) return true or false from the comparison.

Given that x = 5 , the table below explains comparison:

DescriptionExampleReturns
Equal to(x == 8)false
Not equal to(x != 8)true
Greater than(x > 8)false
Less than(x < 8)true

Example

let x = 5;
(x == 8); // equals false
(x != 8); // equals true

See Also

JavaScript Comparisons

Conditions

Booleans are extensively used in if statements to determine the code blocks to execute based on the logic.

ExampleResult
if (day == "Monday")true or false
if (salary > 9000)true or false
if (age < 18)true or false
if (hour < 18) {
 greeting = "Good day";
} else {
greeting = "Good evening";
}

See Also

JavaScript if

JavaScript if else

Loops

Booleans are extensively used in loops to determine conditions for looping.

DescriptionExample
For loopfor (i = 0; i < 5; i++)
While loopwhile (i < 10)
For in loopfor (x in person)
For of loopfor (x of cars)
while (i < 10) {
 text += i;
 i++;
}

See Also

JavaScript Loops

The Boolean() Function

You can use the Boolean() function to find out if an expression (or a variable) is true:

Boolean(10 > 9)

Or even easier

(10 > 9)

Everything With a "Value" is True

100 is true
3.14 is true
-15 is true
true is true
"Hello" is true
"false" is true
(7 + 1 + 3.14) is true
[ ] is true
{ } is true

In JavaScript, both an empty array [ ] and an empty object { } are truthy because they are objects.

All objects in JavaScript evaluate to true in a boolean context, regardless of their content.

JavaScript Booleans as Objects

Normally JavaScript booleans are primitive values created from literals:

let x = false;

But booleans can also be defined as objects with the keyword new :

let y = new Boolean(false);

Example

let x = false;
let y = new Boolean(false);
// typeof x returns boolean // typeof y returns object

Warning

Do not create Boolean objects.

The new keyword complicates the code and slows down execution speed.

Runnable example

let x = Boolean(false);
let y = new Boolean(false);
(x == y) returns true
(x === y) returns false

Boolean objects can produce unexpected results

Comparing two JavaScript objects always returns false .

Previous

JavaScript Conditionals

Next

JavaScript Continue

This chapter

Overview
51

Lessons

194m

Read time

1. JavaScript Tutorial2. JavaScript Syntax3. JavaScript Operators4. JavaScript if5. JavaScript Loops6. JavaScript Functions7. JavaScript Scope8. JavaScript Data Types9. JavaScript Style Guide10. JavaScript Introduction11. JavaScript Statements12. JavaScript Arithmetic13. JavaScript else14. JavaScript For Loop15. JavaScript Functions16. JavaScript Code Blocks17. JavaScript Primitives18. JavaScript Best Practices19. JavaScript Where To20. JavaScript Comments21. JavaScript Assignment22. The JavaScript Ternary Operator23. JavaScript While Loops24. Invoking JavaScript Functions25. JavaScript Hoisting26. JavaScript Built-In Objects27. JavaScript Common Mistakes28. JavaScript Output29. JavaScript Variables30. JavaScript Comparison31. JavaScript Switch Statement32. JavaScript Break33. JavaScript Function Parameters34. JavaScript Use Strict35. JavaScript typeof36. JavaScript Performance37. JavaScript Let38. JavaScript Conditionals39. JavaScript Booleans40. JavaScript Continue41. JavaScript Function Return42. JavaScript toString()43. JavaScript Const44. JavaScript Logical Operators45. JavaScript Control Flow46. JavaScript Function Arguments47. JavaScript Type Conversion48. JavaScript Datatypes49. JavaScript Function Expressions50. JavaScript Destructuring51. JavaScript Arrow Functions

On this page

The Boolean Data TypeKey Boolean CharacteristicsBoolean Use CasesComparisonsConditionsLoopsThe Boolean() FunctionEverything With a "Value" is TrueJavaScript Booleans as Objects