- Javascript Basics Tutorial
- Javascript - Home
- JavaScript - Overview
- JavaScript - Features
- JavaScript - Enabling
- JavaScript - Placement
- JavaScript - Syntax
- JavaScript - Hello World
- JavaScript - Console.log()
- JavaScript - Comments
- JavaScript - Variables
- JavaScript - let Statement
- JavaScript - Constants
- JavaScript - Data Types
- JavaScript - Type Conversions
- JavaScript - Strict Mode
- JavaScript - Reserved Keywords
- JavaScript Operators
- JavaScript - Operators
- JavaScript - Arithmetic Operators
- JavaScript - Comparison Operators
- JavaScript - Logical Operators
- JavaScript - Bitwise Operators
- JavaScript - Assignment Operators
- JavaScript - Conditional Operators
- JavaScript - typeof Operator
- JavaScript - Nullish Coalescing Operator
- JavaScript - Delete Operator
- JavaScript - Comma Operator
- JavaScript - Grouping Operator
- JavaScript - Yield Operator
- JavaScript - Spread Operator
- JavaScript - Exponentiation Operator
- JavaScript - Operator Precedence
- JavaScript Control Flow
- JavaScript - If...Else
- JavaScript - While Loop
- JavaScript - For Loop
- JavaScript - For...in
- Javascript - For...of
- JavaScript - Loop Control
- JavaScript - Break Statement
- JavaScript - Continue Statement
- JavaScript - Switch Case
- JavaScript - User Defined Iterators
- JavaScript Functions
- JavaScript - Functions
- JavaScript - Function Expressions
- JavaScript - Function Parameters
- JavaScript - Default Parameters
- JavaScript - Function() Constructor
- JavaScript - Function Hoisting
- JavaScript - Self-Invoking Functions
- JavaScript - Arrow Functions
- JavaScript - Function Invocation
- JavaScript - Function call()
- JavaScript - Function apply()
- JavaScript - Function bind()
- JavaScript - Closures
- JavaScript - Variable Scope
- JavaScript - Global Variables
- JavaScript - Smart Function Parameters
- JavaScript Objects
- JavaScript - Number
- JavaScript - Boolean
- JavaScript - Strings
- JavaScript - Arrays
- JavaScript - Date
- JavaScript - DataView
- JavaScript - Math
- JavaScript - RegExp
- JavaScript - Symbol
- JavaScript - Sets
- JavaScript - WeakSet
- JavaScript - Maps
- JavaScript - WeakMap
- JavaScript - Iterables
- JavaScript - Reflect
- JavaScript - TypedArray
- JavaScript - Template Literals
- JavaScript - Tagged Templates
- Object Oriented JavaScript
- JavaScript - Objects
- JavaScript - Classes
- JavaScript - Object Properties
- JavaScript - Object Methods
- JavaScript - Static Methods
- JavaScript - Display Objects
- JavaScript - Object Accessors
- JavaScript - Object Constructors
- JavaScript - Native Prototypes
- JavaScript - ES5 Object Methods
- JavaScript - Encapsulation
- JavaScript - Inheritance
- JavaScript - Abstraction
- JavaScript - Polymorphism
- JavaScript - Destructuring Assignment
- JavaScript - Object Destructuring
- JavaScript - Array Destructuring
- JavaScript - Nested Destructuring
- JavaScript - Optional Chaining
- JavaScript - Global Object
- JavaScript - Mixins
- JavaScript - Proxies
- JavaScript Versions
- JavaScript - History
- JavaScript - Versions
- JavaScript - ES5
- JavaScript - ES6
- ECMAScript 2016
- ECMAScript 2017
- ECMAScript 2018
- ECMAScript 2019
- ECMAScript 2020
- ECMAScript 2021
- ECMAScript 2022
- JavaScript Cookies
- JavaScript - Cookies
- JavaScript - Cookie Attributes
- JavaScript - Deleting Cookies
- JavaScript Browser BOM
- JavaScript - Browser Object Model
- JavaScript - Window Object
- JavaScript - Document Object
- JavaScript - Screen Object
- JavaScript - History Object
- JavaScript - Navigator Object
- JavaScript - Location Object
- JavaScript - Console Object
- JavaScript Web APIs
- JavaScript - Web API
- JavaScript - History API
- JavaScript - Storage API
- JavaScript - Forms API
- JavaScript - Worker API
- JavaScript - Fetch API
- JavaScript - Geolocation API
- JavaScript Events
- JavaScript - Events
- JavaScript - DOM Events
- JavaScript - addEventListener()
- JavaScript - Mouse Events
- JavaScript - Keyboard Events
- JavaScript - Form Events
- JavaScript - Window/Document Events
- JavaScript - Event Delegation
- JavaScript - Event Bubbling
- JavaScript - Event Capturing
- JavaScript - Custom Events
- JavaScript Error Handling
- JavaScript - Error Handling
- JavaScript - try...catch
- JavaScript - Debugging
- JavaScript - Custom Errors
- JavaScript - Extending Errors
- JavaScript Important Keywords
- JavaScript - this Keyword
- JavaScript - void Keyword
- JavaScript - new Keyword
- JavaScript - var Keyword
- JavaScript HTML DOM
- JavaScript - HTML DOM
- JavaScript - DOM Methods
- JavaScript - DOM Document
- JavaScript - DOM Elements
- JavaScript - DOM Forms
- JavaScript - Changing HTML
- JavaScript - Changing CSS
- JavaScript - DOM Animation
- JavaScript - DOM Navigation
- JavaScript - DOM Collections
- JavaScript - DOM Node Lists
- JavaScript Miscellaneous
- JavaScript - Ajax
- JavaScript - Async Iteration
- JavaScript - Atomics Objects
- JavaScript - Rest Parameter
- JavaScript - Page Redirect
- JavaScript - Dialog Boxes
- JavaScript - Page Printing
- JavaScript - Validations
- JavaScript - Animation
- JavaScript - Multimedia
- JavaScript - Image Map
- JavaScript - Browsers
- JavaScript - JSON
- JavaScript - Multiline Strings
- JavaScript - Date Formats
- JavaScript - Get Date Methods
- JavaScript - Set Date Methods
- JavaScript - Modules
- JavaScript - Dynamic Imports
- JavaScript - BigInt
- JavaScript - Blob
- JavaScript - Unicode
- JavaScript - Shallow Copy
- JavaScript - Call Stack
- JavaScript - Reference Type
- JavaScript - IndexedDB
- JavaScript - Clickjacking Attack
- JavaScript - Currying
- JavaScript - Graphics
- JavaScript - Canvas
- JavaScript - Debouncing
- JavaScript - Performance
- JavaScript - Style Guide
- JavaScript Useful Resources
- JavaScript - Questions And Answers
- JavaScript - Quick Guide
- JavaScript - Functions
- JavaScript - Resources
JavaScript - Arithmetic Operators
JavaScript Arithmetic Operators
Arithmetic operators in JavaScript perform mathematical calculations on numeric values (operands). Most of the arithmetic operators are binary operators as they perform calculations on two operands. Some arithmetic operators are unary operators. The unary operators perform computation on a single operand.
JavaScript supports many arithmetic operators such as addition, subtraction, multiplication, division operators, etc. It uses the common symbols for arithmetic operators such as "+" for addition, "-" for subtraction, "*" for multiplication, "/ " for division etc.
The operands can be literals, variables or the expression.
var z = 3 + 5; // 3 and 5 are literal values. const x = 3; y = 5; var z = x + y ; // x and y are variables. var z = 3 + 2*x // expression
In general, arithmetic operators are used to perform mathematical operations but they can be used for other operations as well. For example, the addition operator (+) can be used for string concatenation.
Here, we have given a table containing the mathematical operators and explaining the functionality of each operator.
Operator | Name | Description |
---|---|---|
+ | Addition | Adds two operands |
- | Subtraction | Subtracts the second operand from the first |
* | Multiplication | Multiply both operands |
/ | Division | Divide the numerator by the denominator |
% | Modulus | Outputs the remainder of an integer division |
++ | Increment | Increases an integer value by one |
-- | Decrement | Decreases an integer value by one |
Let's discuss the different operators with the help of examples.
JavaScript Addition (+) Operator
The JavaScript addition (+) operator adds two numeric operands. It is denoted by the plus (+) symbol.
var x = 5, y = 10; var sum = x + y;
This operator can also be used to concatenate strings and/or numbers.
var z = '10' + 3 // returns 103 var z = '10' + '3' // returns 103
- If one operand is string, the addition operator converts the other operand to string and concatenate it with first operand.
- If both the operands are string, it just concatenates the second operand to the first operand.
- If both operands are numeric values, it will return the numeric value.
Example
In the below example, we demonstrate adding two decimal numbers and concatenating the strings and numbers.
<html> <body> <script> const x = 3; y = 5; var z = x + y ; document.write(z +"</br>"); var z = '10' + 3 document.write(z +"</br>"); var z = '10' + '3'; document.write(z +"</br>"); </script> </body> </html>
JavaScript Subtraction (-) Operator
JavaScript subtraction (-) operator subtracts the right operand from the left operand and produces their difference. It is denoted by the minus (-) symbol.
20 - 10; // returns 10 '20' - 10; // returns 10 '20' - '10'; // returns 10 '20ee' - 10; // returns NaN NaN - 10 // return NaNs Infinity - 10 // returns infinity
- The subtraction operator uses numeric operands but can also be used for non-numeric operands such as strings.
- If both operands are numbers, then resultant is number.
- If any or both operands are strings (containing only numbers), it first converts the strings to number and then performs subtraction operations.
- If string contains non numeric value, it will return NaN.
- If any operand is NaN or Infinity, the result will be NaN or Infinity respectively.
Example
In the below example, we demonstrate the subtraction two decimal numbers and of other datatypes.
<html> <body> <script> var x = 20; y = 10; var z = x - y ; document.write(z +"</br>"); x = "20"; y = "10" z = x - y ; document.write(z +"</br>"); x = "20ee"; z = x - y ; document.write(z +"</br>"); </script> <p>Change the values of the variables and test the resultant values</p> </body> </html>
JavaScript Multiplication (*) Operator
The JavaScript multiplication operator multiplies two numbers (operands). It gives the product of two operands. It is denoted by the asterisk (*) symbol. If two operands are of same sign, the product is positive. If the two operands are of different sign, the product is negative.
If any or both operands are string, it converts the string to number and then returns their product.
Example
In the example below, we demonstrate the use of multiplication operator on different types of operands.
<html> <body> <script> var x = 20; y = 10; var z = x * y ; document.write(z +"</br>"); x = "20"; y = "10" z = x * y ; document.write(z +"</br>"); x = "20ee"; z = x * y ; document.write(z +"</br>"); </script> <p>Change the values of the variables and test the resultant values</p> </body> </html>
JavaScript Division (/) Operator
The JavaScript division (/) operator divides the left operand (dividend) by the right operand (divisor) and returns the quotient. It is represented by the slash (/) symbol.
20/10 // returns 2 20/-10 // return -2 100/0 // returns Infinity 0/0 // returns NaN
Example
Let's demonstrate the use of division operator.
<html> <body> <script> var x = 20; y = 10; var z = x / y ; document.write(z +"</br>"); x = "20"; y = "10" z = x / y ; document.write(z +"</br>"); z = x / 0 ; document.write(z +"</br>"); z = 0 / 0 ; document.write(z +"</br>"); </script> <p>Change the values of the variables and test the resultant values</p> </body> </html>
JavaScript Modulus (%) Operator
The JavaScript modulus (%) operator returns the remainder when first operand is divided by the second operand. It is also known as remainder operator. It is denoted by the percent (%) symbol. It takes the sign of dividend. Let’s take an example 5%3 gives 2 because when 5 is divided by 3, it gives remainder as 2.
Example
Let's understand the modulus operator with the help of an example program.
<html> <body> <script> var x = 20 % 9; var y = -20 % 9; var z = 20.43 % 9; var a = 20 % -9; var b = 20 % 10; document.write(x +"</br>"); document.write(y +"</br>"); document.write(z +"</br>"); document.write(a +"</br>"); document.write(b +"</br>"); </script> </body> </html>
JavaScript Increment (++) Operator
The JavaScript increment (++) operator increases the value of operand by one. It is an unary operator. It takes only one operand. It is denoted by double plus (++) sign.
There are two types of increment operator in JavaScript −
Prefix Increment Operator
The prefix increment operator increments the value of the variable before its current value is used. For example,
var x = 10; var y = ++x; // x is now 11 and y is also 11.
Postfix Increment Operator
The postfix increment operator increments the value of the variable after its current value is used. For example,
var a = 10; var b = a++; // a is now 11 but b is 10.
Here, in the second line of the above code, first the current value of a is assigned to b, then it is incremented.
Let’s look at the following example −
<html> <body> <script> var x = 10; var y = --x; //prefix decrement var a = 10; var b = a--; // postfix decrement document.write("x = " + x); document.write(" y = " + y + "<br>"); document.write("a = " + a); document.write(" b = " + b + "<br>"); </script> <p>Change the values of the variables and check the results</p> </body> </html>
JavaScript Decrement (--) Operator
The JavaScript decrement (--) operator decreases the value of operand by one. It is also an unary operator, i.e., it takes only one operand. It is denoted by double minus (--) sign.
There are two types of decrement operator in JavaScript −
Prefix Decrement Operator
The prefix decrement operator decrements the value of the variable before its current value is used. For example,
var x = 10; var y = --x; // x is now 9 and y is also 9.
Postfix Decrement Operator
The postfix decrement operator decrements the value of the variable after its current value is used. For example,
var a = 10; var b = a--; // a is now 9 but b is 10.
Here, in the second line of the above code, first the current value of a is assigned to b, then it is decremented.
Let’s look at the following example −
<html> <body> <script> var x = 10; var y = --x; //prefix decrement var a = 10; var b = a--; // postfix decrement document.write("x = " + x); document.write(" y = " + y + "<br>"); document.write("a = " + a); document.write(" b = " + b + "<br>"); </script> <p>Change the values of the variables and check the results</p> </body> </html>