Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

javascript

Olá a todos. Porque o código funcionou na situação abaixo? Não deveria ter gerado um erro por não ter o ponto-e-vírgula?

<script>
alert("Podemos fazer mais com Javascript!")
alert("29/05/2014")
</script>
2 respostas
solução!

Pergunta interessante!

O código pode funcionar sem o ponto-e-virgula após uma declaração, mas para isso é preciso que exista um fim-de-linha ou uma sintaxe correcta.

Vamos aos exemplos:

Exemplo 01:
alert("olá")

Resultado: Funciona! Aparece um alerta.

Exemplo 02:
alert("olá")
alert("olá novamente")

Resultado: Funciona! Aparecem dois alertas.

Exemplo 03:
alert("olá"); alert("olá novamente")

Resultado: Funciona! Aparecem dois alertas.

Exemplo 04:
alert("olá")alert("olá novamente")

Resultado:

SyntaxError: missing ; before statement
alert("olá")alert("olá novamente")

O ";" serve como um delimitador de stataments, contudo, devido ao ASI, o "\n" também irá funcionar como delimitador de statament. Óbvio que existem exceções. "Não usei um delimitador e funcionou, então não vou usar mais": A não utilização pode causar várias situações e é bom saber entender cada uma delas. Se quiser saber mais, recomendo a leitura: http://loopinfinito.com.br/2013/10/22/mamilos-pontos-e-virgulas-em-js/

Interessante esse site.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software