Boolean

Introduction

The Boolean data type is one of the fundamental data types in JavaScript. A Boolean can have only two possible values:

  • true

  • false

Booleans are widely used to represent logical conditions and are essential for making decisions in JavaScript programs. They play a crucial role in conditional statements, loops, comparisons, form validation, authentication, and automation testing.

Whenever a program needs to answer a Yes/No, True/False, or On/Off question, a Boolean value is used.


What is a Boolean?

A Boolean is a primitive data type that represents one of two values:

  • true

  • false

Unlike strings or numbers, Boolean values are not enclosed in quotes.

Example:

let isLoggedIn = true;

console.log(isLoggedIn);

Output

true

Why Do We Need Booleans?

Booleans are used to:

  • Make decisions

  • Control program flow

  • Validate user input

  • Check login status

  • Verify conditions

  • Perform comparisons

  • Write automation test assertions


Creating Boolean Variables

Use let, const, or var to declare Boolean variables.

let isAdmin = true;

const isStudent = false;

Boolean Values

JavaScript has only two Boolean values.

true

Represents a positive or successful condition.

let isPassed = true;

console.log(isPassed);

Output

true

false

Represents a negative or unsuccessful condition.

let isExpired = false;

console.log(isExpired);

Output

false

Checking the Data Type

Use the typeof operator.

let isAvailable = true;

console.log(typeof isAvailable);

Output

boolean

Booleans from Comparison Operators

Comparison operators return Boolean values.

console.log(10 > 5);

Output

true

Another example:

console.log(10 < 5);

Output

false

Equality Comparison

console.log(20 === 20);

Output

true

console.log(20 === 30);

Output

false

Boolean Variables in Conditions

Booleans are commonly used with if statements.

let isLoggedIn = true;

if (isLoggedIn) {

    console.log("Welcome!");

}

Output

Welcome!

Using Boolean Expressions

let age = 20;

let canVote = age >= 18;

console.log(canVote);

Output

true

Here, the comparison age >= 18 evaluates to a Boolean value.


Logical Operators with Booleans

AND (&&)

Returns true only if both conditions are true.

console.log(true && true);

Output

true

console.log(true && false);

Output

false

OR (||)

Returns true if at least one condition is true.

console.log(true || false);

Output

true

console.log(false || false);

Output

false

NOT (!)

Reverses a Boolean value.

console.log(!true);

Output

false

console.log(!false);

Output

true

Boolean Conversion

Use the Boolean() function to convert values into Boolean values.

console.log(Boolean(1));

Output

true

console.log(Boolean(0));

Output

false

console.log(Boolean("Hello"));

Output

true

console.log(Boolean(""));

Output

false

Truthy and Falsy Values

JavaScript automatically converts certain values to true or false when evaluating conditions.

Common Truthy Values

  • Non-empty strings

  • Non-zero numbers

  • Arrays

  • Objects

  • true

Example:

if ("JavaScript") {

    console.log("Truthy");

}

Output

Truthy

Common Falsy Values

The following values are considered falsy:

  • false

  • 0

  • -0

  • 0n (BigInt zero)

  • "" (empty string)

  • null

  • undefined

  • NaN

Example:

if ("") {

    console.log("Hello");

}

Output

No output is displayed because an empty string is a falsy value.


Comparing Boolean Values

let isMember = true;
let hasAccess = true;

console.log(isMember === hasAccess);

Output

true

Real-World Example

Suppose you are checking whether a user is logged in.

const isLoggedIn = true;

if (isLoggedIn) {

    console.log("Access Granted");

}

Output

Access Granted

Automation Testing Example

Automation engineers frequently validate conditions using Boolean values.

const expectedStatus = true;

const actualStatus = true;

console.log(expectedStatus === actualStatus);

Output

true

Another example:

const elementVisible = true;

if (elementVisible) {

    console.log("Element Found");

}

Output

Element Found

Common Mistakes

Using Strings Instead of Booleans

Incorrect:

let isAdmin = "true";

Here, "true" is a string, not a Boolean.

Correct:

let isAdmin = true;

Using Quotes Around Boolean Values

Incorrect:

let isActive = "false";

Correct:

let isActive = false;

Confusing Assignment with Comparison

Incorrect:

if (isLoggedIn = true) {

    console.log("Welcome");

}

This assigns true to isLoggedIn instead of comparing it.

Correct:

if (isLoggedIn === true) {

    console.log("Welcome");

}

Or simply:

if (isLoggedIn) {

    console.log("Welcome");

}

Best Practices

Use Meaningful Boolean Variable Names

Good examples:

let isLoggedIn = true;

let hasPermission = false;

let isVisible = true;

Avoid Comparing with true or false Unnecessarily

Instead of:

if (isLoggedIn === true)

Prefer:

if (isLoggedIn)

Keep Conditions Simple

Write clear and readable Boolean expressions.


Use Booleans for Decision Making

Use Boolean values with conditional statements and loops to control program flow.


Conclusion

The Boolean data type is a simple yet powerful part of JavaScript. It represents only two values—true and false—but these values are the foundation of decision-making in every JavaScript program.

Booleans are widely used in conditional statements, comparisons, logical operations, form validation, and automation testing. Understanding how Boolean values work, including truthy and falsy values, is essential for writing efficient and reliable JavaScript code.


Frequently Asked Questions (FAQs)

What is a Boolean in JavaScript?

A Boolean is a primitive data type that represents one of two values: true or false.


How many Boolean values are there?

There are only two Boolean values:

  • true

  • false


How do I check whether a value is Boolean?

Use the typeof operator.

Example:

let value = true;

console.log(typeof value);

What is the difference between true and "true"?

  • true is a Boolean value.

  • "true" is a string.


Why are Booleans important in automation testing?

Booleans are used to verify conditions such as element visibility, API responses, login status, assertions, and validation checks.


Key Takeaways

  • A Boolean represents either true or false.

  • Boolean values are primitive data types.

  • Comparison operators return Boolean values.

  • Logical operators (&&, ||, !) work with Boolean values.

  • The typeof operator returns "boolean" for Boolean values.

  • JavaScript automatically converts values into truthy or falsy values when evaluating conditions.

  • Booleans are widely used in conditional statements and loops.

  • Meaningful Boolean variable names improve code readability.

  • Avoid using quotes around Boolean values.

  • Understanding Booleans is essential for JavaScript programming and automation testing.