const arr = ['a','c','o','l','s','t','r','i','n','g']; let str = arr[1,2,2,3]; //returns l ¿Qué puedo hacer para devolver "cool" de manera eficiente, que es lo que quiero?
técnicamente, estoy haciendo esto con todos los caracteres especiales como una forma de hacer referencia a ellos en las funciones de cadena porque, de lo contrario, mi código seguía fallando. Encontré esto rápido, fácil y eficiente;
La única solución razonable que se me ocurre es poner en mayúsculas la matriz y crear una función con minúsculas y hacer que devuelva una versión concatenada. Estoy esperando una mejor sugerencia;
---actualización acabo de hacer esto:
function Spc(...theArgs) { let str = "" theArgs.forEach(function(element){ str += spc[element]; }); return str; } findbar.value = Spc(0,10,12)+".*"+Spc(10,12,1);Necesitas tomar los índices y mapear los caracteres. Luego une la matriz a una cadena.
const array = ['a', 'c', 'o', 'l', 's', 't', 'r', 'i', 'n', 'g'], indices = [1, 2, 2, 3], string = indices.map(i => array[i]).join(''); console.log(string);Si tiene una matriz de los índices de los caracteres en 'arr', puede crear una cadena de la siguiente manera:
const arr = ['a','c','o','l','s','t','r','i','n','g']; const indexes = [1,2,2,3] const concatenated = indexes.map(el => arr[el]); // result: ['c', 'o', 'o', 'l'] const string = concatenated.join(''); // result 'cool'Bueno, dado que prefiere el código duro, esto es lo que puede hacer para generar la cadena "genial". ¡Simplemente creamos una nueva matriz de valores de índice codificados que genera la matriz genial y simplemente los unimos!
const arr = ['a','c','o','l','s','t','r','i','n','g']; let newArr = [arr[1],arr[2],arr[2],arr[3]];newArr será [c,o,o,l]
let string = newArr.join("");la cadena se unirá sin espacios que devuelvan "genial"