Ya lo logré, pero no entiendo cómo es que busca en todas las posiciones si le damos el parámetro de la posición actual :-(
for (var **posicion**= 0; posicion < totalIngredientes.length;posicion++) {
if (ingrediente == totalIngredientes[**posicion**])
Este es mi código completo:
<meta charset="UTF-8">
<h1>Recetas de Armando</h1>
<script>
var totalIngredientes = []; //arreglo que guarda los ingredientes
var cantidad = parseInt(prompt("¿Cuántos ingredientes vas a añadir?")); // cantidas de ingredientes solicitadas al usuario
var contador = 1; // Lleva la cuenta de la cantidad de ingredientes ingresados
while (contador <= cantidad) { //ingresa cada uno de los ingredientes al arreglo
var ingrediente = prompt("Anote el ingrediente " + contador); // solicita al usuario la cantidad de ingredientes
var encontrado = false; // anota si el ingrediente está repetido.
for (var posicion= 0; posicion < totalIngredientes.length;posicion++) { // asigna el ingrediente al arreglo
if (ingrediente == totalIngredientes[posicion]) { // verifica en todas las posiciones si existe el elemento
encontrado = true; // si existe, saca del IG y vuelve al for
alert ("El ingrediente " + ingrediente + " ya existe en el registro")
break;
}
}
if (encontrado==false) { // si no existe, lo agrega con el push
totalIngredientes.push(ingrediente);
contador++;
}
}
console.log(totalIngredientes);
alert (totalIngredientes);
</script>