estou aprendendo javaScript, e me deparei com uma situação inesperada, ao tenta somar no console ele concatena, qual a solução ?
-
const array = ['a', 'b', 'c']
-
for(i in array){
-
console.log(`${array[i]} . ${i + 1}`)
-
}
já tentei sem o template string, porém o meu problema ainda continua.
Esse for é usado para iterar em propriedades de um objeto, daí o i
é uma string. Para arrays, use o forEach do array mesmo:
array.forEach( (elemento,index) => console.log(`${elemento} . ${index + 1}`) );
realmente funcionou, mas o termo que você usou “iterar” oque seria ?
Nesse sentido o mais semelhante seria percorrer, você está passando por cada propriedade de um objeto, e a variável i
vai assumir o valor de cada propriedade, uma de cada vez, a cada iteraçao, ou seja, a cada rodada do loop.