
Здравствуйте 👋 сегодняшняя простая задача называется поросячьей латынью и имеет очень простое описание, как показано ниже:
Описание
Переместите первую букву каждого слова в конец, затем добавьте «ay» в конец слова. Оставьте знаки препинания нетронутыми.
Примеры
pigIt('Pig latin is cool'); // igPay atinlay siay oolcay
pigIt('Hello world !'); // elloHay orldway !
Давайте код 👩💻
Это простая проблема. Самый простой способ — создать массив из строки с помощью метода split(). Затем мы можем отобразить все элементы внутри результирующего массива в их версию со свиньями, при условии, что элемент не является специальным символом.
Затем мы можем использовать метод join() для объединения всех элементов массива в одну строку, а затем использовать метод trim() для строки, чтобы удалить начальные и конечные символы пробела.
function pigIt(str) {
return str
.split(" ")
.map(function (str) {
if (isSpecialCharacter(str)) {
return str;
} else {
return str.substring(1) + str[0] + "ay";
}
})
.join(" ")
.trim();
}
function isSpecialCharacter(str) {
var specialCharacters = "!@#$%^&*()_+-=[]{}|;':\"<>,.?/\\";
return specialCharacters.includes(str);
}
Функция специальных символов проверяет, включен ли переданный строковый аргумент в строку специальных символов.
И это все. Свинья, это довольно весело, ты не думаешь 🤔
Ссылки
Вопрос: https://www.codewars.com/kata/520b9d2ad5c005041100000f/train/javascript
Github (скопируйте код и оставьте звездочку): https://github.com/AmohPrince/CodeWars/blob/master/Javascript/SimplePigLatin.js
Адиос 👋