Com a ajuda de um colega do fórum, entendi onde estava errando. Porém não estou compreendendo a razão do erro do loop do primeiro ingrediente. Aqui está o código errado:
var ingredientes = [];
var quantidade = parseInt(prompt("Quantos ingredientes você vai adicionar?"));
var contador = 1;
while(contador <= quantidade) {
var ingrediente = prompt("Informe o ingrediente " + contador);
var repetido = false;
for(var posicao = 0; posicao < ingredientes.length; posicao++) {
if(ingrediente == ingredientes[posicao]) {
repetido = true;
break;
}
if(ingrediente !== ingredientes[posicao]) {
ingredientes.push(ingrediente);
contador++;
}
}
}
Alguém consegue explicar o loop passo a passo? Eu pensei que o contador++ era adicionado a cada varrida do for, mas isso não explica o contador sempre estar em 1 nesse loop.