JavaScript Logical AND assignment (&&=) Operator
This operator is represented by x &&= y, and it is called the logical AND assignment operator. It assigns the value of y into x only if x is a truthy value.
We use this operator x &&= y like this. Now break this expression into two parts, x && (x = y). If the value of x is truth, then the statement (x = y) executes and the value of y gets stored into x but if the value of x is a falsy value then the statement (x = y) does not get executed.
Syntax :
x &&= y
is equivalent to
x && (x = y)
Example:
Javascript
<script> 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); </script> |
Output :
"Ram" "Shyam" "" ""
Example 2:
HTML
<!DOCTYPE html> < html > < body > < h1 >Hello Geeksforgeeks</ h1 > < p id = "print_arr" ></ p > < script > let arr = [1, 2, "apple", null, undefined, []] // Replace each truthy values with "gfg" arr.forEach((item, index)=>{ arr[index] &&= "gfg" }) document.getElementById("print_arr").innerText = arr.toString(); //console.log(arr) </ script > </ body > </ html > |
Output :
Supported Browsers:
- Chrome 85
- Edge 85
- Firefox 79
- Safari 14