Mi método de empalme no funciona aquí (no preste atención a mi código, solo quiero saber por qué este código no funciona en mi consola).
function capSpace(txt) { // write your code here wordSplit = txt.split(""); for (let i = 0; i < wordSplit.length; i++) { if (wordSplit[i].toUpperCase() == wordSplit[i]) { wordSplit.splice(5, 0, " ") } } return wordSplit } console.log(capSpace("fausJkalMalkihkLhb"));En primer lugar, debe incrementar la i para cada carácter que agregue a la matriz.
Supongo que está tratando de agregar un espacio antes de cada letra mayúscula, en cuyo caso debe agregarlo en el índice i , no en el quinto índice.
function capSpace(txt) { // write your code here wordSplit = txt.split(""); for (let i = 0; i < wordSplit.length; i++) { if (wordSplit[i].toUpperCase() == wordSplit[i]) { wordSplit.splice(i, 0, " "); i++; } } return wordSplit } var result = capSpace("fausJkalMalkihkLhb").join(''); console.log(result);El método de empalme está agregando un espacio vacío a la matriz wordSplit en su fragmento que se encuentra aquí:
wordSplit.splice(5, 0, " ") Esto incrementa la longitud de wordSplit en cada iteración y la condición del bucle for:
i < wordSplit.length nunca estará satisfecho porque la longitud de wordSplit aumenta, lo que crea un bucle infinito y, por lo tanto, nunca puede devolver wordSplit y, por lo tanto, nunca puede consolar. Registre la variable de result porque está atascada en un bucle infinito.