Devo usar ponto-e-vírgula?
Dúvida comum: quando eu devo usar ponto-e-vírgula no Javascript? Javascript herdou a sintaxe do ramo do Pascal e do C, com um ponto-e-vírgula ao final de cada comando. Em tese, deveria funcionar então como PHP, Java, C++ ou Delphi. Disse “em tese”, porque o ECMA incluiu um recurso na linguagem que inclui automaticamente, na hora da interpretação do código, um ponto-e-vírgula ao final de cada linha de código que não termine com ponto-e-vírgula. Isso significa que você não pode, em javascript, escrever seu comando em mais de uma linha, como pode fazer em PHP:
1 2 3 4 5 | <? $x=1 + 2; ?> |
Se você seguir as recomendações do ECMA, vai escrever ponto-e-vírgula ao final de cada linha, e se esquecer de alguma o interpretador vai inseri-la automaticamente.
1 2 3 | x=1; y=2; z=x+y; |
Por outro lado, a inclusão de ponto-e-vírgula automático vai fazer com que, na prática, a linguagem se comporte de maneira muito semelhante a linguagens como Ruby ou Python, em que você só costuma usar ponto-e-vírgula quando vai digitar mais de um comando numa mesma linha. Logo, pode ser que você prefira escrever assim:
1 2 3 | x=1 y=2 z=x+y |
Embora alguns possam argumentar que, por ser uma recomendação do ECMA, usar ponto-e-vírgula é melhor, na verdade quem vai decidir que estilo de código é melhor para você é você mesmo. Se você é um programador PHP ou Java, e se sente melhor escrevendo os pontos-e-vírgulas, vá em frente. Se você, como eu, se sente melhor quando escreve menos código, não use o ponto-e-vírgula. A mesma coisa acontece em relação ao uso e posicionamento das chave. Veja, por exemplo, essas duas maneiras diferentes de se escrever o mesmo código:
1 2 3 4 5 6 7 8 9 10 11 | function conta(x) { for(var i=0;i<x;i++) { alert("Contando"+i); if(i%2==0) { alert("É par!"); } } } |
E o jeito como eu gosto:
1 2 3 4 5 6 7 | function conta(x){ for(var i=0;i<x;i++){ alert("Contando"+i) if(i%2==0) alert("É par!") } } |
Escolha o padrão que parecer mais legível para você. Só não se esqueça de tornar isso um padrão na empresa, ou pelo menos em sua equipe, de modo que todos os desenvolvedores usem a mesma sintaxe.
Entry Details
Publicado em 30/11/2007 às 11:11 em Básico, Javascript

Interessante… não sabia que não é necessário usar os pontos-e-vírgula em Javascript. Como também adoro a simplicidade de Python, estou acostumado de forma parecida com a que você gosta. Vou passar a abolir o ponto-e-vírgula a partir de agora, pelo menos quando não houver uma equipe envolvida com o projeto.
Adorei a proposta do blog e vou colaborar sempre que puder. A magia também acontece no client-side. Afinal, o que é o server-side sem um bom client-side?
Por outro lado o uso é bom pois ao comprimir o código e não usar ponto-e-vírgula o código pode dar erro.
Mas como você disse, depende do gosto de cada um.
Muito legal esse artigo.
Parabens. Added ao meu agregador =D
Como o Felipe citou, o não uso do ponto-e-vírgula pode acarretar em erros ao comprimir o código.
Portanto, hoje escrevo meus códigos JavaScript inserindo ponto-e-vírgula sistematicamente.
Sou adepto a escrever menos códigos, mas neste caso, gosto de escrever um pouco mais
Inclusive após a chave final de uma função, incluo ponto-e-vírgula, ao comprimir, estou livre de problemas.
Abraços.
[…] Como você escreve seus códigos? Eu apenas vi um blog falando sobre uma parte do assunto que quero comentar aqui e foi no clientside. O post era sobre: Devo usar ponto-e-vírgula? […]