Удаляется последний символ, как исправить?

function pigIt(str) {
    const arrayOfWord = str.split(' ');

    return arrayOfWord.map(word => {
        const arrayOfLetter = word.split('');

        arrayOfLetter[arrayOfLetter.length-1] += arrayOfLetter[0] + 'ay';
        arrayOfLetter.splice(arrayOfLetter[0], 1);

        return arrayOfLetter.join('');
    }).join(' ');
}

console.log(pigIt('Pig latin is cool !'));
console.log(pigIt('Hello world !'));

В первом случае должно вывестись: igPay atinlay siay oolcay !, а выводится: igPay atinlay siay oolcay Во втором должно вывестись: elloHay orldway !, а выводится elloHay orldway


Ответы (1 шт):

Автор решения: entithat

Чисто в лоб в конец добавить последний элемент разделенной строки.

function pigIt(str) {
    const arrayOfWord = str.split(' ');

    return arrayOfWord.map(word => {
        const arrayOfLetter = word.split('');

        arrayOfLetter[arrayOfLetter.length-1] += arrayOfLetter[0] + 'ay';
        arrayOfLetter.splice(arrayOfLetter[0], 1);

        return arrayOfLetter.join('');
    }).join(' ') + arrayOfWord[arrayOfWord.length - 1];
}

console.log(pigIt('Pig latin is cool !'));
console.log(pigIt('Hello world !'));

→ Ссылка