Por que los puntos y comas explícitos son importantes en JavaScript

Estoy en la capacitación de "JavaScript efectivo" en @PayPalEng por Douglas Crockford y no puedo expresar lo esclarecedora que ha sido esta experiencia. Hoy me di cuenta de por qué el uso de puntos y coma explícitos es tan importante en JS. Compartiré mis ideas pronto. #javascript #desarrollo web #PayPal

- Shruti Kapoor (@ shrutikapoor08) 28 de noviembre de 2018

Problemas en los que la inserción automática de punto y coma puede provocar errores

Tomé el entrenamiento de JavaScript efectivo de Douglas Crockford hace unos meses. Una cosa que me quedó grabada desde entonces es la importancia de utilizar puntos y comas explícitos en JavaScript. Durante un tiempo, he estado evitando perezosamente escribir el ;y asumiendo que el analizador hará mi trabajo correctamente por mí. En esta publicación, quiero presentar algunos ejemplos que cambiaron mi forma de pensar.

Ejemplo 1

¿Cuál espera que sea el resultado de esto?

const test = () => { return { ok : true } } console.log(test())

Es de esperar que la salida de esto sea objectcon una propiedad okestablecida en true. Pero en cambio, la salida es undefined. Esto es así porque dado que la llave comienza en una nueva línea, la finalización automática del punto y coma cambia el código anterior a esto:

const test = () => { return; { ok : true } }

Solución : use llaves a la derecha de retorno y punto y coma explícitos:

const test = () => { return { ok : true } };

Ejemplo 2

const a = 1 const b = 2 (a+b).toString()

¿Qué crees que sucede en el código anterior? Obtenemos un error Uncaught ReferenceError: b is not defined. Esto se debe a que el paréntesis de la tercera línea se interpreta como un argumento de función. Este código se convierte a esto:

const a = 1; const b = 2(a+b).toString();
En el caso de que una instrucción de asignación deba comenzar con un paréntesis izquierdo, es una buena idea que el programador proporcione un punto y coma explícito al final de la instrucción anterior en lugar de depender de la inserción automática de punto y coma.

- ECMA-International.org

He aprendido a tener cuidado al utilizar la inserción automática de punto y coma.

Otras lecturas -

  1. Reglas de inserción automática de punto y coma
  2. Publicación de blog de Bradley Braithwaite inspirada en la misma conferencia

aprendiste algo nuevo? ¿Tiene comentarios? ¿Conoces un DevJoke? Tweet me @ shrutikapoor08

"Siempre les digo a las mujeres: cuando llegues a la cima, regresa al ascensor y trae a una mujer contigo" - Eunice Kennedy Shriver. Palabras de la sabiduría. #fempire #womenintech #mujeres líderes

- Shruti Kapoor (@ shrutikapoor08) 17 de enero de 2019