DEV Community

Abhay Yt
Abhay Yt

Posted on

Understanding JavaScript Operators: A Complete Guide with Examples

### Operators in JavaScript

Operators in JavaScript are special symbols used to perform operations on values and variables. These operations can involve arithmetic, assignment, comparison, logical, and other actions. Understanding operators is essential for performing basic calculations, comparisons, and controlling the flow of your code.

JavaScript supports a wide variety of operators, and they are categorized into the following types:


### 1. **Arithmetic Operators**
Arithmetic operators are used to perform mathematical calculations on numbers.

Operator Description Example
+ Addition 5 + 38
- Subtraction 5 - 32
* Multiplication 5 * 315
/ Division 5 / 31.666...
% Modulus (Remainder) 5 % 32
** Exponentiation 5 ** 225

Example:

let a = 10;
let b = 2;
console.log(a + b);  // Output: 12
console.log(a - b);  // Output: 8
console.log(a * b);  // Output: 20
console.log(a / b);  // Output: 5
console.log(a % b);  // Output: 0
console.log(a ** b); // Output: 100
Enter fullscreen mode Exit fullscreen mode

**

2. Assignment Operators**

Assignment operators are used to assign values to variables.

Operator Description Example
= Assign value x = 5
+= Add and assign x += 3x = x + 3
-= Subtract and assign x -= 2x = x - 2
*= Multiply and assign x *= 4x = x * 4
/= Divide and assign x /= 2x = x / 2
%= Modulus and assign x %= 3x = x % 3
**= Exponentiation and assign x **= 2x = x ** 2

Example:

let x = 10;
x += 5;  // x = x + 5 -> 15
x *= 2;  // x = x * 2 -> 30
console.log(x);  // Output: 30
Enter fullscreen mode Exit fullscreen mode

### 3. **Comparison Operators**
Comparison operators are used to compare values and return a Boolean (true or false) based on the condition.

Operator Description Example
== Equal to (loose) 5 == '5'true
=== Equal to (strict) 5 === '5'false
!= Not equal to (loose) 5 != '5'false
!== Not equal to (strict) 5 !== '5'true
> Greater than 5 > 3true
< Less than 5 < 3false
>= Greater than or equal 5 >= 5true
<= Less than or equal 5 <= 3false

Example:

console.log(5 == '5');  // Output: true (loose comparison)
console.log(5 === '5'); // Output: false (strict comparison)
console.log(10 > 5);    // Output: true
console.log(3 <= 2);    // Output: false
Enter fullscreen mode Exit fullscreen mode

### 4. **Logical Operators**
Logical operators are used to perform logical operations, returning Boolean values.

Operator Description Example
&& Logical AND true && falsefalse
` `
! Logical NOT !truefalse

#### Example:

let a = true;
let b = false;
console.log(a && b);  // Output: false
console.log(a || b);  // Output: true
console.log(!a);      // Output: false
Enter fullscreen mode Exit fullscreen mode

### 5. **Unary Operators**
Unary operators operate on a single operand to perform a specific action.

Operator Description Example
++ Increment x++x = x + 1
-- Decrement x--x = x - 1
typeof Type of operand typeof xnumber
void Evaluates expression without returning a value void(0)

#### Example:

let x = 10;
console.log(++x);  // Output: 11 (Pre-increment)
console.log(x--);  // Output: 11 (Post-decrement)
console.log(typeof x);  // Output: number
Enter fullscreen mode Exit fullscreen mode

### 6. **Ternary (Conditional) Operator
**The ternary operator is a shorthand for the if...else statement. It evaluates a condition and returns one of two values based on whether the condition is true or false.

Operator Description Example
condition ? expr1 : expr2 If condition is true, return expr1; otherwise, return expr2 x > 10 ? 'Greater' : 'Lesser'

*#### Example:
*

let age = 18;
let result = age >= 18 ? 'Adult' : 'Minor';
console.log(result);  // Output: Adult
Enter fullscreen mode Exit fullscreen mode

### 7. **Bitwise Operators
**Bitwise operators perform operations on binary numbers.

Operator Description Example
& AND 5 & 31
` ` OR
^ XOR 5 ^ 36
~ NOT ~5-6
<< Left shift 5 << 110
>> Right shift 5 >> 12
>>> Unsigned right shift 5 >>> 12

*#### Example:
*

let a = 5;  // Binary: 101
let b = 3;  // Binary: 011
console.log(a & b);  // Output: 1 (Binary: 001)
console.log(a | b);  // Output: 7 (Binary: 111)
console.log(a << 1); // Output: 10 (Binary: 1010)
Enter fullscreen mode Exit fullscreen mode

### 8. **Spread Operator (...)
**The spread operator allows you to unpack elements from an array or object into a new array or object.

*#### Example:
*

let arr1 = [1, 2, 3];
let arr2 = [...arr1, 4, 5];
console.log(arr2);  // Output: [1, 2, 3, 4, 5]

let obj1 = { a: 1, b: 2 };
let obj2 = { ...obj1, c: 3 };
console.log(obj2);  // Output: { a: 1, b: 2, c: 3 }
Enter fullscreen mode Exit fullscreen mode

### Conclusion

JavaScript operators are fundamental for performing calculations, comparisons, and logical operations. Whether you're manipulating values, comparing them, or controlling the flow of your program, understanding these operators is crucial for efficient coding. Use the right operators based on your task to ensure clean and readable code.

Hi, I'm Abhay Singh Kathayat!
I am a full-stack developer with expertise in both front-end and back-end technologies. I work with a variety of programming languages and frameworks to build efficient, scalable, and user-friendly applications.
Feel free to reach out to me at my business email: kaashshorts28@gmail.com.

Top comments (0)