Não entendi por qual motivo a resposta foi:
var letras = ['A', 'B', 'C', 'D'];
for( var i = 0; i < letras.length; i++ ) {
alert(letras[i]);
}
Alguém poderia me dar um norte neste exercício?
Não entendi por qual motivo a resposta foi:
var letras = ['A', 'B', 'C', 'D'];
for( var i = 0; i < letras.length; i++ ) {
alert(letras[i]);
}
Alguém poderia me dar um norte neste exercício?
Boa noite Ednaldo, quando você declara um vetor, ele por padrão inicia com a primeira casa sendo a 0 exemplo:
letras[0] = 'A'
letras[1] = 'B'
letras[2] = 'C'
letras[3] = 'D'
letras[4] = undefild
Então quando ele monta a estrutura de repetição o for ele inicia com o valor var i = 0, então a condição e testada depois, i é menor que letras.length ou seja 0 é menor que 3. Ele tem que usar menor por que como começa zero e o limite do vetor de 0 a três, se usássemos o '<=' iriamos para o letras[4] que estaria o quinto valor por que começou a contar com o zero
Todo Array começa da posição 0 então vc não pode colocar para iniciar a contagem aparte do 1 por exemplo
for( var i = 1; i <= letras.length; i++ ) {
alert(letras[i]);
}
isso mesmo, mas nesse exemplo você começou sua variável i valendo 1, quando começa valendo 1 o '<=' funciona, mas quando começa o i começa com 0 só se usa o '<' vai contando manualmente dos dois jeitos.
for(var i = 0; i< 3; i++){
mostra(i);
}
for(var i = 1; i<=3; i++){
mostra(i);
}
faz esse condigo que você vai ver essa lógica funcionando.
Não pode ser <=, tem que ser somente < porque o 4 item é o último, a contagem começa de 0 á 3, sendo o total de 4 e a lógica não poder contar com o 4 item duas vezes.