Coloque as chaves de abertura na mesma linha em JS

É muito comum usar o seguinte estilo para blocos em JavaScript:

// Recommended
if (condition) {
// ... Some code ...
}

em oposição a:

// Not recommended 
if (condition)
{
// ... Some code ...
}

Embora você possa pensar que isso geralmente é uma preferência pessoal, em JavaScript há um bom motivo para fazer isso da primeira vez. Graças à inserção automática de ponto-e-vírgula , o código a seguir não faria o que você esperava.

function foo() {
return
{
bar
: "foobar"
};
}

foo()Nesse caso undefined, a chamada retornará , porque o interpretador JavaScript insere automaticamente um ponto-e-vírgula após a returnpalavra chave.

Você pode evitar esse comportamento tornando sua prática padrão abrir blocos (ou literais de objeto) na mesma linha, assim:

function foo() {
return {
bar
: "foobar"
};
}

Isso fará com que retorne o objeto esperado .foo(){bar: "foobar"}

Como dica adicional, nunca confie na inserção automática de ponto-e-vírgula. Encerre cada uma das suas declarações com um ponto e vírgula; será mais fácil ler seu código (menos tempo gasto descobrindo como o interpretador irá moldar o comportamento), e é menos provável que haja quebra de minificadores e / ou concatenadores.