En mi código, recibo una matriz con números. Algunos números son dígitos dobles o incluso dígitos de árbol. Entonces se ve así:
[48, 48, 48, 48, 99, 52, 50, 100, 97, 101, 102, 51, 98, 100, 49, 100, 51, 100, 52, 53, 54, 57, 99, 49, 53, 52, 55, 51, 55, 52, 100, 57, 99, 56, 52, 49, 99, 99, 102, 52, 56, 50, 51, 55, 53, 49, 56, 97, 53, 101, 99, 53, 55, 54, 99, 57, 50, 97, 99, 56, 97, 50, 53, 53, 49, 54, 52, 55, 50, 54, 56, 57, 56, 50, 54, 54, 57, 50, 53, 55, 48]Y este es el código de cómo he logrado esto:
function hashData(s) { let hashArray = []; for(let i = 0; i < s.length; i++){ let code = s.charCodeAt(i); hashArray.push(code); } hashArray.toString().split("") console.log(hashArray) return hashArray;}
Lo que quiero lograr es esto:
[4, 8, 4, 8, 4, 8, 4, 8, 9, 9, 5, 2] //and so on. Como puede ver, probé el método toString() , pero parece que no hace nada.
Podría unirse y obtener una nueva matriz.
const values = [1, 23, 456, 7890], result = Array.from(values.join(''), Number); console.log(result);Simplemente .join los números de entrada en una cadena larga, luego volver a convertirlo en una matriz (de caracteres individuales) y asignar a número.
const hashData = s => [...s.join('')].map(Number); console.log(hashData([48, 48, 48, 48, 99, 52, 50, 100, 97, 101, 102, 51, 98, 100, 49, 100, 51, 100, 52, 53, 54, 57, 99, 49, 53, 52, 55, 51, 55, 52, 100, 57, 99, 56, 52, 49, 99, 99, 102, 52, 56, 50, 51, 55, 53, 49, 56, 97, 53, 101, 99, 53, 55, 54, 99, 57, 50, 97, 99, 56, 97, 50, 53, 53, 49, 54, 52, 55, 50, 54, 56, 57, 56, 50, 54, 54, 57, 50, 53, 55, 48]))