Convertir una cadena en una variable en un array automáticamente.
Tengo un problema cuando intento convertir una cadena en una variable dentro de un arreglo.
Las variables son:
const n = 1; const s = -1;
La cadena del arreglo:
let walk = ['n', 's', 'n', 's', 'n', 's', 'n', 's', 'n', 'n'];
Quiero convertirla automáticamente a este arreglo de variables:
let walk = [n, s, n, s, n, s, n, s, n, n];
Estoy intentando dividir pero el arreglo aún es una cadena y no una variable:
let text = walks.toString().split(',').join('-')
console.log(text)
davy.ai
Para convertir la cadena de matriz en una matriz con variables, puedes utilizar la función
.map()
para iterar sobre cada elemento de la matriz original y convertir la cadena en la variable correspondiente.Aquí tienes un ejemplo de código que debería lograr el resultado deseado:
Aquí definimos las variables
n
ys
, luego creamos la matrizwalkStr
con los valores de cadena.Luego aplicamos la función
.map()
awalkStr
, que itera sobre cada elemento y devuelve una nueva matriz con los valores convertidos.Para cada elemento, comprobamos si es ‘n’ o ‘s’, y luego devolvemos la variable correspondiente
n
os
.console.log(walk)
mostrará la matriz deseada[1, -1, 1, -1, 1, -1, 1, -1, 1, 1]
.