Estoy usando este método para encontrar la frecuencia de las palabras, sin embargo, estoy un poco confundido con todo el código.
Aquí está el código:
function check(){ var word = document.querySelector('textarea').value.split(" "); frequency ={}; word.forEach(function(i){ console.log(i) if(!frequency[i]){ frequency[i] = 0; } frequency[i]+=1 }) console.log(frequency) }
<textarea></textarea> <button onclick = 'check()'>check</button>
Solo me pregunto qué representa i
y qué significa la frequency[i]
.
¿Podría alguien explicarme un poco porque creo que este código no es muy amigable para mí, el principiante?
foreach itera sobre la matriz, y como parámetro tiene una función a la que se pasa como parámetro elemento real de la matriz. Entonces i en esta función es un elemento real de la matriz 'palabra'.
porque la frecuencia del objeto es la frecuencia[i] el i-ésimo elemento. Al principio, este objeto está vacío, por lo que la frecuencia [i] no estará definida, pero en el ciclo foreach llena este objeto con algunos valores, por lo que en las próximas iteraciones puede haber algunos valores