논리적 Nullish 할당 ??= en JavaScript

인디스


  • Introducción
  • Sintaxis
  • Funcionamiento
  • Equivalencia
  • Ejemplos
  • Soporte en Navagadores
  • Conclusiones
  • Referencias

  • 1. 소개

    Logical Nullish Assignment o Asignación Lógica Nula en español ( ??= ) es un operador nuevo en JavaScript sencillo de comprender y con aplicaciones practicas en nuestro código.

    2. 신탁시스

    x ??= y
    x ?? (x = y)
    

    Ambas sintaxis son equivalentes, aunque la primera más usada.

    3. 펑시오나미엔토

    Solo si el valor de x es nullish el valor de y se asignará a x .
    Entiendase por valor nullish solo 2 posibilidades: null o undefined . Cualquier otro valor no es considerado nullish.

    4. 등가

    Esto:

    let x = null;
    
    x ??= 12;
    

    Equivale a esto:

    let x = null;
    
    if (x === null || x === undefined) {
      x = 12;
    }
    

    5. 에젬플로스

    예시 #1



    const x = 25;
    let y;
    const z = 30;
    console.log(x ??= y); // 25
    // x no es nullish, entonces se respeta su valor
    
    console.log(y ??= z); // 30
    // y es undefined, entonces adopta el valor de z
    

    예시 #2



    const pokemon = {
      id:1,
      nombre: "Pikachu"
    };
    
    pokemon.nombre ??= "Charmander";
    pokemon.peso ??= 10;
    
    console.log(pokemon.nombre); // Pikachu
    console.log(pokemon.peso); // 10
    
    pokemon.nombre 임프림 Pikachu por que su valor no es nullish.
    엔 캄비오, pokemon.pesoundefined en el objeto pokemon , entonces le asignamos el valor 10 .

    예시 #3



    const config = (obj) => {
      obj.duracion ??= 500;
      obj.largo ??= 250;
      return obj;
    }
    
    console.log(config({ duracion: 100 })); // {duracion: 100, largo: 250}
    console.log(config({})); // {duracion: 500, largo: 250}
    

    예시 #4



    const arreglo = [1, 2, undefined, "Hola mundo", null];
    
    const res = arreglo.map((item, index, arr) => {
      return arr[index] ??= "xxx"
    })
    
    console.log(res); // [1, 2, "xxx", "Hola mundo", "xxx"];
    

    En este ejemplo recorremos el arreglo con map y con Logical Nullish Assignment remplazamos los valores nullish del arreglo 콘 우나 카데나 xxx .

    6. 나베가도레스의 소포르테

    • Chrome 85
    • Edge 85
    • Firefox 79
    • Safari 14
    • Opera 71

    7. 결론

    Logical Nullish Assignment es un operador relativamente nuevo en javascript, pero esta bueno conocerlo y saber que existe.
    Es sencillo de usar y comprender, tiene muchas aplicaciones interesantes.

    8. 참조

  • Logical nullish assignment (??=)
  • Logical nullish Assignment ??= in JavaScript
  • Can I use Logical Nullish Assignment ?


  • 이해 가능성:














    좋은 웹페이지 즐겨찾기