Estoy escribiendo una prueba usando broma, donde estoy recuperando una cuadrícula de 10x10 de mi clase. Quiero recorrer la matriz que contiene esta cuadrícula y cambiar el estado de verdadero a 'golpear' donde el nombre de la cuadrícula es 'battleship1'.
let grid = battleships.returnGrid() for (let i = 0; i < 10; i++) { for (let y = 0; y < 10; y++) { if (grid[i][y].shipName == 'battleship1') { console.log(grid[i][y].square) grid[i][y].status == 'hit' } } } console.log(grid)Este es el código que estoy ejecutando. Después de ejecutar el ciclo for y registrar la cuadrícula, todavía está en la forma original, con el estado de la cuadrícula establecido en verdadero.
¿Por qué no puedo cambiar el estado a "golpear"?
Estás comparando y no configurando:
grid[i][y].status == 'hit'Cuando asigne un valor, simplemente utilícelo así (solo uno =):
grid[i][y].status = 'hit'¿Has probado a cambiar un poco de operador?
let grid = battleships.returnGrid() for (let i = 0; i < 10; i++) { for (let y = 0; y < 10; y++) { if (grid[i][y].shipName === 'battleship1') { console.log(grid[i][y].square) grid[i][y].status = 'hit' } } } console.log(grid)