let body = document.querySelector("body") let container = document.querySelector("#container") let enter = document.querySelector("#enter") let inputArr = [] for (let rowCount = 0; rowCount < 6; rowCount++) { let row = [] inputArr.push(row) for (let i = 0; i < 5; i++) { let space = document.createElement("input"); container.appendChild(space) row.push(space); space.classList.add("square") } } let wordSet = ["panic", "knobs", "swain", "dupes", "venom", "great", "carom", "soare"] let num = Math.floor(Math.random()*8) let word = wordSet[num] console.log(word) enter.addEventListener("click", () => { for (let rowVal = 0; rowVal < 6; rowVal++) { for (let col = 0; col < 5; col++) { let current = inputArr[rowVal][col].value if (current === "" || inputArr[rowVal][col].style.backgroundColor !== "darkgray") { rowVal++ } if (current == word[col]) { inputArr[rowVal][col].style.backgroundColor = "green" } if (current !== word[col] && word.indexOf(current)) { inputArr[rowVal][col].style.backgroundColor = "yellow" } if (current !== word[col] && word.indexOf(current) == false) { inputArr[rowVal][col].style.backgroundColor = "white" } } } })Cada vez que escribo algunas letras en los espacios y presiono el botón Intro, los colores de los cuadrados en otras filas cambian y parece estar en forma diagonal. Intenté jugar con las declaraciones if y cambiarlas a declaraciones else if, y siento que eso podría tener que ver con por qué el clon de wordle no funciona, pero todavía no estoy completamente seguro.
Creo que el problema está aquí:
word.indexOf(current) == falseindexOf devuelve el índice o -1.
-1 == false // false