JavaScript | Encadenamiento opcional

JavaScript | Encadenamiento opcional
El encadenamiento opcional es una característica bastante nueva para JavaScript presentado por ECMA International. Se utiliza para verificar las propiedades de los objetos anidados profundos sin tener que preocuparse por la propiedad no existente. Proporciona una forma segura de verificar esos valores sin encontrar errores. El operador de encadenamiento opcional devuelve un valor indefinido en lugar de un error, cuando la referencia no existe. Esta característica no es algo que definitivamente necesitará en su código, pero a menudo puede demostrar ser muy útil. El encadenamiento opcional funcionará mejor cuando no esté realmente seguro de cómo se verían los datos E.gramo., Al trabajar con API.

El operador de cambio opcional continuará hacia abajo hasta que alcance un valor de propiedad o se ejecute en un error:

Dejar empleado =
primer nombre: "John",
LastName: "Doe",
Edad: 34
;
consola.Registro (empleado.DIRECCIÓN?.cremallera);

Si hubiéramos intentado acceder al mismo valor de propiedad sin usar el operador de encadenamiento opcional, entonces habríamos recibido un error:

Dejar empleado =
primer nombre: "John",
LastName: "Doe",
Edad: 34
;
consola.Registro (empleado.DIRECCIÓN.cremallera);

Caminaje opcional en llamadas de método

El encadenamiento opcional también funciona en llamadas de método. Puede usar el encadenamiento opcional cuando no está seguro de si existe un método dentro de un objeto. Un caso de uso de ejemplo son los datos obtenidos de una API que puede o no contener ciertas características dependiendo del dispositivo del usuario:

Dejar empleado =
primer nombre: "John",
LastName: "Doe",
Edad: 34
;
consola.Registro (empleado.método?.());

Sin encadenamiento opcional:

Dejar empleado =
primer nombre: "John",
LastName: "Doe",
Edad: 34
;
consola.Registro (empleado.método());

El operador de encadenamiento opcional también se puede usar varias veces dentro de una sola declaración para evitar errores.

Combinando el encadenamiento opcional con el operador nulo Coalescing

El encadenamiento opcional también se puede combinar con el ?? operador para proporcionar un valor predeterminado en caso de que la propiedad o el método no existan:

Dejar empleado =
primer nombre: "John",
LastName: "Doe",
Edad: 34
;
consola.Registro (empleado.método?.() ?? "La función no existe");

El valor predeterminado también puede ser una llamada de función.

Uso excesivo de encadenamiento opcional

Se introdujo el encadenamiento opcional para aumentar la legibilidad y la elegancia del código. Debe usarse cuidadosamente, ya que puede provocar silenciamiento de errores. El uso excesivo del operador de encadenamiento opcional puede causar problemas en su código.

Conclusión

El encadenamiento opcional es una característica recientemente agregada de JavaScript que puede usarse para acceder a propiedades y métodos dentro de los objetos JavaScript anidados sin tener que preocuparse por poner las verificaciones manuales para la existencia de esos métodos y propiedades.