Hola, estoy aprendiendo programación en javascript y estoy haciendo un ejercicio de algoritmo en el que básicamente tienes que convertir las letras divididas en dígitos.
Tengo una variable **dividida ** que uso para actualizar parte de mi código.
Quiero que esta variable permanezca constante, así que no puse ninguna línea en mi código para cambiar su valor.
Sin embargo, cuando consola.log el valor de la variable dividida, su valor se actualiza. Porqué es eso ?
d = { "ZERO": 0, "ONE": 1, "TWO": 2, "THREE": 3, "FOUR": 4, "FIVE": 5, "SIX": 6, "SEVEN": 7, "EIGHT": 8, "NINE": 9 } let result = [] let split = [ [], [], [], [], [], [], [], [], [], [] ] let array = [ [], [], [], [], [], [], [], [], [], [] ] for (var w = 0; w <= 9; w++) { array[w] = [Object.keys(d)[w].split('')] split[w] = [Object.keys(d)[w].split('')] } function digitsRecovery(s) { for (var i = 0; i < s.length; i++) { console.log(split) for (var j = 0; j < array.length; j++) { array[j].push([j]) for (var t = 0; t < array[j].length; t++) { if (array[j][t].includes(s[i])) { array[j][t] = array[j][t].filter(x => x != s[i]) } if (array[j][t].length === 0) { console.log(j, array[j][t].length) result.push(j) array[j][t] = split[j][0] } } if (split[j][0].includes(s[i])) { array[j].push(split[j][0]) } else { array[j] = split[j] } } } } digitsRecovery("ONETWOTHREE")