Operador de asignación OR lógico de JavaScript (||=)

Este operador está representado por x ||= y  y se llama operador de asignación OR lógico. Si el valor de x es falso , el valor de y se asignará a x.

Cuando lo dividimos en dos partes se convierte en x || ( x = y ).

Comprueba si x es verdadero o falso, si el valor de x es falso , entonces ejecuta el bloque (x = y) y el valor de y se almacena en x y si el valor de x es verdadero, entonces el valor del siguiente bloque ( x = y ) no se ejecuta.

Sintaxis:

x ||= y

es equivalente a 

x || (x = y)

Ejemplo 1:

Javascript

<script>
  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);
</script>

Producción :

"Ram"
"Ram"
""
"Kumar"

Ejemplo 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 falsy values with "gfg"
      arr.forEach((item, index)=>{
        arr[index] ||= "gfg"
    })
  
    document.getElementById("print_arr").innerText = arr.toString();
      
  </script>
    
</body>
</html>

Producción :

Navegadores compatibles:

  • cromo 85
  • Borde 85
  • firefox 79
  • Safari 14

Publicación traducida automáticamente

Artículo escrito por _saurabh_jaiswal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *