JavaScript Arithmetic Operators
JavaScript Arithmetic Operators are the operator that operate upon the numerical values and return a numerical value.
Addition (+) Operator
The addition operator takes two numerical operands and gives their numerical sum. It also concatenates two strings or numbers.
// Number + Number => Addition
let x = 1 + 2;
console.log( x );
// Number + String => Concatenation
let y = 5 + "hello";
console.log( y );
Output
3 5hello
Subtraction (-) Operator
The subtraction operator gives the difference between two operands in the form of numerical value.
// Number - Number => Subtraction
let x = 10 - 7;
console.log( x );
let y = "Hello" - 1;
console.log( y );
Output
3 NaN
Multiplication (*) Operator
The multiplication operator gives the product of operands where one operand is a multiplicand and another is multiplier.
// Number * Number => Multiplication
let x = 3 * 3;
let y = -4 * 4;
console.log(x);
console.log(y);
let a = Infinity * 0;
let b = Infinity * Infinity;
console.log(a);
console.log(b);
let z = 'hi' * 2;
console.log(z);
Output
9 -16 NaN Infinity NaN
Division (/) Operator
The division operator provides the quotient of its operands where the right operand is the divisor and the left operand is the dividend.
// Number / Number => Division
let x = 5 / 2;
let y = 1.0 / 2.0;
console.log(x);
console.log(y);
let a = 3.0 / 0;
let b = 4.0 / 0.0;
console.log(a);
console.log(b);
let z = 2.0 / -0.0;
console.log(z);
Output
2.5 0.5 Infinity Infinity -Infinity
Modulus (%) Operator
The modulus operator returns the remainder left over when a dividend is divided by a divisor. The modulus operator is also known as the remainder operator. It takes the sign of the dividend.
// Number % Number => Modulus of the number
let x = 9 % 5;
let y = -12 % 5;
let z = 1 % -2;
let a = 5.5 % 2;
let b = -4 % 2;
let c = NaN % 2;
console.log(x);
console.log(y);
console.log(z);
console.log(a);
console.log(b);
console.log(c);
Output
4 -2 1 1.5 -0 NaN
Exponentiation (**) Operator
The exponentiation operator gives the result of raising the first operand to the power of the second operand. The exponentiation operator is right-associative.
In JavaScript, it is not possible to write an ambiguous exponentiation expression i.e. you cannot put an unary operator (+ / – / ~ / ! / delete / void) immediately before the base number.
// Number ** Number => Exponential of the number
// let x = -4 ** 2 // This is an incorrect expression
let y = -(4 ** 2);
let z = 2 ** 5;
let a = 3 ** 3;
let b = 3 ** 2.5;
let c = 10 ** -2;
let d = 2 ** 3 ** 2;
let e = NaN ** 2;
console.log(y);
console.log(z);
console.log(a);
console.log(b);
console.log(c);
console.log(d);
console.log(e);
Output
-16 32 27 15.588457268119896 0.01 512 NaN
Increment (++) Operator
The increment operator increments (adds one to) its operand and returns a value.
- If used postfix with the operator after the operand (for example, x++), then it increments and returns the value before incrementing.
- If used prefix with the operator before the operand (for example, ++x), then it increments and returns the value after incrementing.
// Postfix
let a = 2;
b = a++; // b = 2, a = 3
// Prefix
let x = 5;
y = ++x; // x = 6, y = 6
console.log(a);
console.log(b);
console.log(x);
console.log(y);
Output
3 2 6 6
Decrement (- -) Operator
The decrement operator decrements (subtracts one from) its operand and returns a value.
- If used postfix, with operator after operand (for example, x–), then it decrements and returns the value before decrementing.
- If used prefix, with the operator before the operand (for example, –x), then it decrements and returns the value after decrementing.
// Prefix
let a = 2;
b = --a;
// Postfix
let x = 3;
y = x--;
console.log(a);
console.log(b);
console.log(x);
console.log(y);
Output
1 1 2 3
Unary Negation (-) Operator
This is a unary operator i.e. it operates on a single operand. It gives the negation of an operand.
let a = 3;
b = -a;
// Unary negation operator
// can convert non-numbers
// into a number
let x = "3";
y = -x;
console.log(a);
console.log(b);
console.log(x);
console.log(y);
Output
3 -3 3 -3
Unary Plus (+) Operator
This is a way to convert a non-number into a number. Although unary negation (-) also can convert non-numbers, unary plus is the fastest and preferred way of converting something into a number, because it does not perform any other operations on the number.
let a = +4;
let b = +'2';
let c = +true;
let x = +false;
let y = +null;
console.log(a);
console.log(b);
console.log(c);
console.log(x);
console.log(y);
Output
4 2 1 0 0
Arithmetic Operators list
There are many arithmetic operators as shown in the table with the description.
OPERATOR NAME | USAGE | OPERATION |
---|---|---|
Addition Operator | a + b | Add two numbers or concatenate the string |
Subtraction Operator | a – b | Difference between the two operators |
Multiplication Operator | a * b | Multiply two number |
Division Operator | a / b | Find the quotient of two operands |
Modulus Operator | a % b | Find the remainder of two operands |
Exponentiation Operator | a ** b | Raise the Left operator to the power of the right operator |
Increment Operator | a++ ++a | Return the operand and then increase by one Increase operand by one and then return |
Decrement Operator | a- – – -a | Return operand and then decrease by one Decrease operand by one and then return |
Unary Plus(+) | +a | Converts NaN to number |
Unary Negation (-) | -a | Converts operand to negative. |
We have a complete list of Javascript operators, to check those please go through this Javascript Operators Complete reference article.
We have a Cheat Sheet on Javascript where we covered all the important topics of Javascript to check those please go through Javascript Cheat Sheet-A Basic guide to JavaScript.
JavaScript Arithmetic Operators – FAQs
What are arithmetic operators in JavaScript?
Arithmetic operators are symbols used in JavaScript to perform basic mathematical operations like addition, subtraction, multiplication, division, and more.
What is the addition operator (+)?
The addition operator adds two numbers together or concatenates two strings.
What is the subtraction operator (-)?
The subtraction operator subtracts one number from another.
What is the multiplication operator (*)?
The multiplication operator multiplies two numbers.
What is the division operator (/)?
The division operator divides one number by another.
What is the modulus operator (%)?
The modulus operator returns the remainder of a division operation.
What is the increment operator (++)?
The increment operator increases a variable’s value by one.
What is the decrement operator (–)?
The decrement operator decreases a variable’s value by one.
What is the exponentiation operator (**)?
The exponentiation operator raises one number to the power of another.
Can arithmetic operators be used with variables?
Yes, arithmetic operators can be used with variables to perform calculations and update values.