Curso de Programação em Javascript e HTML
204 pág.

Curso de Programação em Javascript e HTML


DisciplinaProgramação I20.578 materiais240.129 seguidores
Pré-visualização40 páginas
de terminada a execução do bloco de código
 é executada a terceira instrução do ciclo <code>for</code>,
 que é <code>i++</code>. Esta terceira instrução aumenta em
 uma unidade o valor da variável <code>i</code>.
 </p>
 <p>
 4) A seguir executa-se a segunda instrução do ciclo, que é
 <code>i <= 5</code>. Se o resultado for
 verdadeiro (true) salta-se para o passo 2 (ou seja, executa mais
 uma vez o bloco de código e repetem-se as instruções que se seguem).
 Se o resultado for falso abandona-se o ciclo for e passa-se para a
 Instrução que vem imediatamente a seguir ao bloco de código.
 </p>
</body>
</html>
Gerar todos os cabeçalhos no corpo de um documento
<html>
<head>
<meta name=&quot;autor&quot; content=&quot;Rafael Feitosa&quot;> 56
Curso de Programação em JavaScript e HTML Dinâmico
Desenvolvimento, aplicações e referências de acordo com as normas do W3C
<title></title>
</head>
<body>
<!--
 for (var i = 1; i <= 6; i++)
 {
 document.write(&quot;<h&quot; + i + &quot;>Este é um cabeçalho de nível &quot; + i)
 document.write(&quot;</h&quot; + i + &quot;>&quot;)
 }
// -->
</body>
</html>
4.2 Ciclos while e ciclos do...while
A instrução while repete a execução de um bloco de código enquanto uma 
condição for satisfeita. A sua sintaxe é a seguinte:
while (condição)
{
 código a executar
}
A instrução do...while repete a execução de um bloco de código enquanto uma 
condição for satisfeita mas executa-o pelo menos uma vez, mesmo que a condição 
nunca seja satisfeita. A sua sintaxe é a seguinte:
do
{
 código a executar
}
while (condição)
Exemplos de Aplicação
Ciclos (de repetição) while
<html>
<head>
<title></title>
</head>
<body>
<!--
<meta name=&quot;autor&quot; content=&quot;Rafael Feitosa&quot;> 57
Curso de Programação em JavaScript e HTML Dinâmico
Desenvolvimento, aplicações e referências de acordo com as normas do W3C
 var i = 0
 while (i <= 5)
 {
 document.write(&quot;O número é &quot; + i)
 document.write(&quot;<br>&quot;)
 i++
 }
 document.write(&quot;O ciclo terminou<br>&quot;)
// -->
<h3>Explicação</h3>
 <p>
 1) O ciclo <code>while</code> verifica
 a condição <code>i <= 5</code>.
 Se o resultado for verdadeiro (true) executa
 o bloco de código que está entre chaves ({ ... })
 logo a seguir à instrução <code>while</code>.
 Se o resultado for falso abandona-se o ciclo for e passa para a
 instrução que vem imediatamente a seguir ao bloco de código.
 </p>
 <p>
 2) Repete-se o passo 1. Repare que o ciclo acaba parando porque cada
 vez que o bloco de código é executado o valor da variável
 <code>i</code> é aumentado em uma unidade. Se não fosse assim o ciclo
 nunca terminaria.
 </p>
</body>
</html>
Ciclos (de repetição) do ... while
<html>
<head>
<title></title>
</head>
<body>
<!--
 i = 0
 do
 {
 document.write(&quot;O número é &quot; + i)
 document.write(&quot;<br>&quot;)
 i++
 }
 while (i <= 5)
 document.write(&quot;O ciclo terminou<br>&quot;)
// -->
<h3>Explicação</h3>
 <p>
<meta name=&quot;autor&quot; content=&quot;Rafael Feitosa&quot;> 58
Curso de Programação em JavaScript e HTML Dinâmico
Desenvolvimento, aplicações e referências de acordo com as normas do W3C
 1) O bloco de código que está entre chaves ({ ... })
 logo a seguir à instrução <code>do</code> é sempre 
 executado sem que seja necessário verificar qualquer condição.
</p>
<p>
 2) Verifica-se a condição que está dentro da instrução
 <code>while</code>, que neste caso é <code>i <= 5</code>.
 Se o resultado for verdadeiro (true) executa-se mais uma vez
 o bloco de código que está entre chaves ({ ... }).
 Se o resultado for falso abandona-se o ciclo e passa-se para a
 instrução vem imediatamente a seguir ao bloco de código.
</p>
<p>
 Repare que o ciclo é sempre executado pelo menos uma vez.
 Ele acaba parando porque a cada execução o bloco de código
 aumenta o valor da variável <code>i</code> em uma unidade.
 Se não fosse assim o ciclo nunca terminaria.
</p>
</body>
</html>
5. Construir código robusto: as instruções try ... catch
Nota: Apesar destas instruções não fazerem parte do padrão ECMAScript, elas 
são suportadas por todos os browsers importantes e são de grande utilidade para a 
construção de um código robusto.
Diversas vezes surgem situações em que uma parte de um script é executada 
em condições desfavoráveis. Isso acontece sempre que um script tenta usar um objeto 
que não está definido ou tenta realizar uma operação que não pode ser realizada.
Sempre que aparece uma situação deste tipo surge uma exceção na execução 
do código. O comportamento normal do interpretador de JavaScript é parar a 
execução do script porque não sabe o que deve fazer a seguir.
Porém, há situações adversas das quais o script pode recuperar em boas 
condições desde que o programador lhe dê instruções para tal. Isso se consegue 
fazendo a captura da exceção gerada pelo erro e executando código capaz de fazer a 
recuperação.
Para conseguirmos isso devemos usar as instruções try...catch, que têm a 
sintaxe seguinte:
try
{
 bloco com código normal mas que pode gerar erros
}
catch(exceção)
{
<meta name=&quot;autor&quot; content=&quot;Rafael Feitosa&quot;> 59
Curso de Programação em JavaScript e HTML Dinâmico
Desenvolvimento, aplicações e referências de acordo com as normas do W3C
 bloco com código capaz de fazer a recuperação dos erros
}
A seção try contém o código normal logo a seguir à instrução try. Ao chegar a 
esta instrução o interpretador de JavaScript tenta executar esse bloco da forma 
habitual. Se não ocorrer nenhum erro o interpretador ignora o código que está na 
seção catch e continua a executar o resto do script. Se ocorrer um erro no bloco try 
esse erro é capturado pelo bloco catch. É aí que o interpretador de JavaScript 
continua a executar o código imediatamente após o erro. No bloco catch devemos 
colocar o código de recuperação.
Os exemplos apresentados na lista seguinte mostram como isto funciona:
Exemplos de Aplicação
As instruções try ... catch
<html>
<head>
<title></title>
</head>
<body>
<!--
 var s
 var a = new Array(&quot;Balinhas&quot;, &quot;Pirulitos&quot;)
 try
 {
 s = a[3].substring(0,4)
 }
 catch(e)
 {
 s = &quot;Ocorreu um erro no script: &quot;+e.description
 }
 document.write(s)
 document.write('<br>')
 try
 {
 s = a[1].substring(0,4)
 }
 catch(e)
 {
 s = &quot;Ocorreu um erro no script: &quot;+e
 }
 document.write(s)
// -->
 <p>
 Repare que no primeiro bloco try...catch surgiu um
 erro porque a[3] não está definido. Por isso o
 interpretador de JavaScript executou o código de recuperação
 do bloco catch. Já no segundo bloco try...catch a parte
 try não produz nenhum erro, deste modo, a parte catch não
 chega a ser executada.
 </p>
</body>
</html>
<meta name=&quot;autor&quot; content=&quot;Rafael Feitosa&quot;> 60
Curso de Programação em JavaScript e HTML Dinâmico
Desenvolvimento, aplicações e referências de acordo com as normas do W3C
As instruções try ... catch (versão 2)
<html>
<head>
<title></title>
</head>
<body>
<!--
 var s1 = &quot;A tentativa 1 foi executada com sucesso!<br><br>&quot;
 // TENTATIVA 1
 try
 {
 // Vamos tentar executar código que não tem erros
 document.write(s1)
 }
 catch(e)
 {
 document.write(&quot;A tentativa 1 não foi executada com sucesso!<br><br>&quot;)
 }
 // TENTATIVA 2
 try
 {
 // Vamos tentar executar código que TEM ERROS (s2 não existe)
 document.write(s2)
 }
 catch(e)
 {
 document.write(&quot;A tentativa 2 não foi executada com sucesso!<br><br>&quot;)
 }
 document.write(&quot;A execução do script continua apesar de termos encontrado um 
erro.&quot;)
// -->
 <p>
 Repare que a segunda tentativa gerou um erro porque a variável
 s2 não existe.
Carregar mais