JS.10 · Основы
Задача
Проверить, читается ли строка одинаково в обе стороны.
Алгоритм
Строка приводится к нижнему регистру, убираются пробелы, затем сравнивается с развёрнутой копией.
Исходный код
⇩ Скачать 10-proverka-palindroma.js
// Проверка палиндрома
function isPalindrome(s) {
const t = s.toLowerCase().replace(/\s+/g, '');
return t === [...t].reverse().join('');
}
console.log('топот ->', isPalindrome('топот'));
console.log('а роза упала ->', isPalindrome('а роза упала на лапу азора'));
console.log('привет ->', isPalindrome('привет'));
Пояснения
[...t] корректно разбивает строку на символы, включая юникод; reverse().join склеивает обратно.