Dúvida sobre o exercício e sobre o comando "break" | Lógica de programação I: Os primeiros programas com Javascript e HTML | Solucionado
Dúvida sobre o exercício e sobre o comando "break"
Thabata de Oliveira Marchi Tamura
(40.8k xp, 30 posts)
Gostaria de entender melhor o que seria o "break", ele é um comando de uma função, certo? Ele para a partir do momento que é inserido na instrução e não lê mais as demais instruções após ele, seria isso?
Porém, no meu caso, criei um alert, ao invés do break, dessa forma, o "alert" se torna um tipo de break na função? Esta pergunta é somente para ter certeza se entendi como funciona o break e se esta correto utilizar o "alert", ao invés do break.
while( contador <= quantidade) {
adicionei = false;
for( var posicao = 0; posicao < ingredientes.length; posicao++ ){
if( ingredientes[posicao] == ingrediente ){
alert("Ops! Você já adicionou este ingrediente!");
adicionei = true;
if (adicionei == false) {
document.write(ingredientes);
(107.1k xp, 28 posts)
Olá , veja se ajuda minha explicação :
com o uso do break:
var teste = 0;
while (teste <5) {
if(teste==2) {
document.writeln("Só imprime 0 e 1")
// ele nem chega no 3 , chega no 2 e já para break;
document.writeln(teste);
com o uso do alert :
alert("Não imprime o numero 2 , imprime 0,1,3 e 4")
// ele pula o 2 e continua executando
teste++; }
com o uso do continue :
o continue sim e bem parecido com o alert, só não tem uma "pausa".
O break então, como o inglês, para a função sem ir para o próximo. Já com o alert, e o "continue", ele ainda retorna na função ?
Por exemplo, eu tive uma dúvida sobre a questão do retorno do "while". E tive a seguinte resposta:
O que ocorre é que ele precisa chegar no valor fora do escopo antes de iterar novamente, para que na próxima interação ele seja recusado. Olhe o código abaixo:
while (numero <=3) {
//Primeira iteração: numero =  0 true
//Segunda iteração: numero =  1 true
//Terceira iteração: numero =  2 true
//Quarta iteração: numero =  3 true
//Quinta iteração: numero =  4 false, ele chega no verificador retorna false e não entra no corpo do laço
Ou seja, neste caso, ele ainda retorna na função while, mas quando retorna "false" ele não continua mais. O break, ele não continua a verificar a função, mas o alert(), retornaria na função? Seria isso?