Siempre promuevo el uso de punto y coma al escribir JavaScript. A menudo, el intérprete podrá inferirlos por usted; pero todavía tengo que ver una razón (aparte de la pereza ;-)) por la cual deliberadamente escribirías tu código de una manera menos precisa que la posible.
En mi opinión, si la estructura del código es obvia, será realmente claro dónde van los puntos y comas, de modo que ni siquiera tendrá que pensar en ello después de haber adquirido el hábito (es decir, al final de cada línea); por otro lado, si no queda inmediatamente claro dónde va el punto y coma, entonces es probable que la estructura no sea la más obvia de todos modos, y se necesitan puntos y coma explícitos allí más que en cualquier otro lugar.
También le da la costumbre de comprender y delimitar declaraciones en su cabeza, por lo que tiene una mejor comprensión (marginalmente) mejor de cómo su código puede analizar en un AST o similar. Y eso tiene que ser algo bueno al depurar errores de sintaxis.
Recopilé una lista de casos en los que es importante utilizar un punto y coma [aquí] (http: // stackoverflow.com/questions/25088708/what-rules-must-i-follow-to-write-valid-javascript-without-punto-comas). Algunos argumentos para omitir el punto y coma se pueden encontrar [aquí] (http://softwareengineering.stackexchange.com/questions/142086/why-the-recent-shift-to-removing-omitting-semicolons-from-javascript). Hay un paquete de estilo de código llamado [standardjs] (https://standardjs.com/awesome.html) que elimina el punto y coma. – joeytwiddle