Pular para o conteúdo principal

JS - Estruturas de repetição - while

Estruturas de repetição (loop) repetem a execução de determinadas instruções enquanto a condição de parada não for atendida. É muito importante ter isso em mente, pois, uma estrutura de repetição com uma lógica errada pode levar o browser ao travamento, caso a condição de saída nunca seja atendida.

Sintaxe

Aqui temos a palavra reservada "while" seguida da condição de parada:

while( "condição parada" ) { 
    "instruções a serem executadas enquanto condição de parada não for atendida" 
}

Exemplo

Vamos exemplificar com a seguinte lógica, será criada uma variável e enquanto essa variável for menor que o valor dez deverão ser executadas o "print" do valor dessa varável e ela deve ser incrementada:

var count = 0;
while( count < 10 ) {
    console.log(count);
    count++;
}



Exemplo usando o conceito "truthy/falsy"

Sabemos que o valor zero (0) é "falsy", logo caso seja necessário criar uma estrutura de repetição (loop) decrescente podemos fazer de uma forma que o valor da variável seja testado diretamente, no próxima exemplo nossa variável começará com o valor dez e, enquanto o valor dessa variável for "truthy" deverá ser impresso o valor atual da variável e ela deve ser decrementada:

var count = 10;
while (count) {
    console.log(count);
    count--;
}


Comentários

Mais visitadas

Lista de políticos com ficha suja

ATUALIZAÇÃO (08/03/2012 ano de eleição) Representantes de duas pessoas da lista (Eliseu Padilha e Alex Canziani) entraram em contato e pediram que esses fossem removidos, alegando que não houve condenação. É justo essa requisição, porém vale lembrar que escândalos nacionalmente reconhecidos de corrupção não deram em nada, por isso o que realmente conta nesse ano de eleição é uma pesquisa minuciosa sobre os candidatos escolhidos, eu particularmente, por não estar nem um pouco satisfeito, não irei votar em ninguém que já tenha sido eleito. Estou voltando a postar por um motivo nobre, meu tempo continua apertado mas esse post é rápido, na verdade nem meu ele é (visitem o espaço de nosso amigo Lord ), estou apenas repassando essa valiosa informação. Teremos eleição esse ano, e é importante não repetirmos erros passados, vamos ficar atentos em relação a esses nomes e exclui-los de vez do cenário politico nacional. Façamos nossa parte, publicando em nossos blog...

Listar arquivos existentes em diretório (Delphi)

Mostraremos uma maneira simples e prática para listar o conteúdo de um diretório com a opção de incluir nessa listagem os arquivos de seus subdiretórios. No exemplo abaixo temos um Edit para receber o diretório a ser pesquisado um CheckBox para indicar se os subdiretórios entrarão na pesquisa um botão para efetuar a pesquisa e um Memo para listar os arquivos encontrados, no final um Edit que receberá o cálculo final (em bytes) da soma do tamanho dos arquivos. procedure TForm1.Button1Click(Sender: TObject); begin   tamanhoTotal := 0;   memLista.Lines.Clear;   ListarArquivos(edtDiretorio.Text, chkSub.Checked);   Edit1.Text := IntToStr( tamanhoTotal ); end; procedure TForm1.ListarArquivos(Diretorio: string; Sub:Boolean); var   F: TSearchRec;   Ret: Integer;   TempNome: string; begin   Ret := FindFirst(Diretorio+'\*.*', faAnyFile, F);   try     while Ret = 0 do ...

Funções de Data e Hora (Delphi)

É muito comum nos depararmos no dia a dia com a necessidade de manipular datas e horas, seja para um calculo de permanência, dias de atraso enfim, é praticamente escapar de alguma situação que necessite desse tipo de controle. Assim como a necessidade e se utilizar algum recurso para manipular as datas e horas de alguma maneira e freqüente, as duvidas de como o faze-lo também é, basta um breve olhar em qualquer fórum especializado e lá está, alguma duvida relacionada, por isso decidi falar um pouco sobre uma unit muito poderosa chamada DateUtils para a manipulação de data e hora, com um grande numero de métodos e classes que facilitam a vida de qualquer um. Alguns exemplos: CompareDate(constA, B: TDateTime): TValueRelationship; Compara apenas a data de dois valores (do tipo TDateTime) retornando: LessThanValue O primeiro valor é menor que o segundo EqualsValue Os valores são iguais GreaterThanValue O primeiro valor é maior que o segundo CompareDateTime(const A, B: TD...