¿JavaScript necesita punto y coma al final de una función o cualquier otra cosa?

Esto es algo que puede buscar en Google para obtener más información, pero no, JavaScript no requiere punto y coma; en su lugar, puede usar saltos de línea, excepto en circunstancias limitadas. El intérprete de JavaScript en realidad está agregando puntos y comas faltantes para usted, pero es bastante bueno en esto. Si usa un minificador en su código, se agregarán puntos y comas a medida que se eliminen los saltos de línea.

Puede ver código como este en varias bibliotecas de JavaScript:

; (función (g) {
// código
}()(esta);

La razón por la que se usa este patrón es para evitar que una biblioteca se interprete inadvertidamente como parte de una biblioteca anterior; el punto y coma aquí logra eso. Personalmente, no uso punto y coma en mi propio JavaScript a menos que realmente tenga que hacerlo porque esta es una práctica recomendada establecida por Node.js para sus módulos NPM. La gente argumentará esto de cualquier manera y, en la práctica, usará lo que mejor le parezca, o use con qué otros desarrolladores están trabajando.

Si buscas en google “sintaxis de punto y coma de javascript”, encontrarás muchas opiniones diferentes. Mientras lo hace, busque “Expresión de función invocada inmediatamente” y “Mejores prácticas de punto y coma de NPM”. Si está trabajando con JavaScript, todas estas son ideas importantes de las que al menos debe tener conocimiento, y lo ayudarán a comprender cualquier biblioteca en la que necesite profundizar.

Para lo que vale, también recomendaría mirar el código nominificado para JQuery o subrayar o cualquier otra biblioteca de JavaScript, y tratar de darle sentido al código que encuentre allí. Puede ser críptico debido a convenciones como IIFE, pero también puede ser gratificante.

Encontré esta guía de estilo hace un tiempo, y me gusta mucho de lo que contiene. Crea un código limpio que es fácil de leer (y, por lo tanto, un poco más fácil de depurar).

https://github.com/airbnb/javasc

Dejé de usar punto y coma hace unos meses (excepto en casos excepcionales donde son necesarios) y estoy muy contento con esa decisión. El código se ve más limpio y es un poco menos tipeado.

Muchas personas son resistentes, pero por ejemplo Bootstrap no las usa, y son bastante grandes:

https://github.com/twbs/bootstra

No lo hace, pero no debe soltar puntos y comas a menos que sepa cómo funciona la inserción automática de punto y coma de JavaScript. Puede introducir errores sutiles que son realmente difíciles de encontrar de otra manera.

Si sabe cómo funciona, sigue siendo una cuestión de estilo de codificación: puede usar lo que le funcione si está trabajando solo o si sigue una convención de codificación establecida por el equipo para el proyecto.

Sí, si desea que el código funcione en todos los navegadores y todas las versiones de manera confiable sin la inserción implícita de punto y coma en los lugares equivocados y sin tener que depurar durante horas debido a ello.

No es obligatorio, pero eliminar los punto y coma no se considera una buena práctica de codificación.