JavaScript Assignment Operators (original) (raw)
Last Updated : 21 Nov, 2024
Assignment operators are used to assign values to variables in JavaScript.
JavaScript `
// Lets take some variables x = 10 y = 20
x = y // Here, x is equal to 20
console.log(x); console.log(y);
`
**More Assignment Operators
There are so many assignment operators as shown in the table with the description.
OPERATOR NAME | SHORTHAND OPERATOR | MEANING |
---|---|---|
**Addition Assignment | a+=b | a=a+b |
**Subtraction Assignment | a-=b | a=a-b |
**Multiplication Assignment | a*=b | a=a*b |
**Division Assignment | a/=b | a=a/b |
**Remainder Assignment | a%=b | a=a%b |
**Exponentiation Assignment | a**=b | a=a**b |
**Left Shift Assignment | a<<=b | a=a<<b |
**Right Shift Assignment | a>>=b | a=a>>b |
**Bitwise AND Assignment | a&=b | a=a&b |
**Bitwise OR Assignment | a|=b | a=a | b |
**Bitwise XOR Assignment | a^=b | a=a^b |
**Logical AND Assignment | a&&=b | x && (x = y) |
**Logical OR Assignment | | | = |
**Nullish coalescing Assignment | ??= | x ?? (x = y) |
**Addition Assignment Operator(+=)
The Addition assignment operator adds the value to the right operand to a variable and assigns the result to the variable. Addition or concatenation is possible. In case of concatenation then we use the string as an operand.
**Example:
JavaScript `
let a = 2; const b = 3;
// Expected output: 2 console.log(a);
// Expected output: 4 console.log(a = b + 1);
`
**Subtraction Assignment Operator(-=)
The Substraction Assignment Operator subtracts the value of the right operand from a variable and assigns the result to the variable.
**Example:
JavaScript `
let yoo = 4;
// Expected output 3 console.log(foo = yoo - 1);
`
**Multiplication Assignment Operator(*=)
The Multiplication Assignment operator multiplies a variable by the value of the right operand and assigns the result to the variable.
**Example:
JavaScript `
let yoo = 4;
// Expected output 3 console.log(foo = yoo - 1);
`
**Division Assignment Operator(/=)
The Division Assignment operator divides a variable by the value of the right operand and assigns the result to the variable.
**Example:
JavaScript `
let yoo = 10; const moo = 2;
// Expected output 5 console.log(yoo = yoo / moo);
// Expected output Infinity
console.log(yoo /= 0);
`
**Remainder Assignment Operator(%=)
The Remainder Assignment Operator divides a variable by the value of the right operand and assigns the remainder to the variable.
**Example:
JavaScript `
let yoo = 50;
// Expected output 0 console.log(yoo %= 10);
`
**Exponentiation Assignment Operator
The Exponentiation Assignment Operator raises the value of a variable to the power of the right operand.
**Example:
JavaScript `
let yoo = 50;
// Expected output 0 console.log(yoo %= 10);
`
**Left Shift Assignment Operator(<<=)
This **Left Shift Assignment Operator moves the specified amount of bits to the left and assigns the result to the variable.
**Example:
JavaScript `
let yoo = 5;
// Expected output 20(In Binary 10100) console.log(yoo <<= 2);
`
**Right Shift Assignment Operator(>>=)
The **Right Shift Assignment Operator moves the specified amount of bits to the right and assigns the result to the variable.
**Example:
JavaScript `
let yoo = 5;
// Expected Output 1(In binary 001) console.log(yoo >>= 2);
`
**Bitwise AND Assignment Operator(&=)
The **Bitwise AND Assignment Operator uses the binary representation of both operands, does a bitwise AND operation on them, and assigns the result to the variable.
**Example:
JavaScript `
let yoo = 5;
// Expected output 0(In binary 000) console.log(yoo &= 2);
`
**Btwise OR Assignment Operator(|=)
The **Btwise OR Assignment Operator uses the binary representation of both operands, does a bitwise OR operation on them, and assigns the result to the variable.
**Example:
JavaScript `
let yoo=5;
// Expected output 7(In binary 111) console.log(yoo|=2);
`
**Bitwise XOR Assignment Operator(^=)
The **Bitwise XOR Assignment Operator uses the binary representation of both operands, does a bitwise XOR operation on them, and assigns the result to the variable.
**Example:
JavaScript `
let yoo = 5;
// Expected output 7(In binary 111) console.log(yoo ^= 2);
`
Logical AND Assignment Operator(&&=)
The Logical AND Assignment assigns the value of **y into **x only if **x is a **truthy value.
**Example:
JavaScript `
let name = { firstName: "Ram", lastName: "", };
console.log(name.firstName);
// Changing the value using logical // AND assignment operator name.firstName &&= "Shyam";
// Here the value changed because // name.firstName is truthy console.log(name.firstName);
console.log(name.lastName);
// Changing the value using logical // AND assignment operator name.lastName &&= "Kumar";
// Here the value remains unchanged // because name.lastName is falsy console.log(name.lastName);
`
Logical OR Assignment Operator(||=**)**
The **Logical OR Assignment Operator is used to assign the value of y to x if the value of x is falsy.
**Example:
JavaScript `
let name = { firstName: "Ram", lastName: "", };
console.log(name.firstName);
// Changing the value using logical // OR assignment operator name.firstName ||= "Shyam";
// But value does not change because // name.firstName is truthy console.log(name.firstName);
console.log(name.lastName);
// Changing the value using logical // OR assignment operator name.lastName ||= "Kumar";
// The value changes because name.lastName is falsy console.log(name.lastName);
`
**Nullish coalescing Assignment Operator(??=)
The **Nullish coalescing AssignmentOperator assigns the value of y to x if the value of x is null.
**Example:
JavaScript `
let x = 12; let y = null;
let z = 13;
// The value of x will become // unchanged because x is not nullish. x ??= z;
// The value of y will be // changed because y is nullish. y ??= z;
console.log(x) // 12 console.log(y) // 13
`
**Supported Browsers: The browsers supported by all **JavaScript Assignment operators are listed below: