Вирішено Як перевернути рядок, що містить складні смайли, в зворотному напрямку?

Alex Alex · 13 · 1

Вхідні дані:

Hello world👩‍🦰👩‍👩‍👦‍👦

Бажаний результат:

👩‍👩‍👦‍👦👩‍🦰dlrow olleH

Я спробував кілька підходів, але жоден не дав мені правильного результату.

Це не працює:

const text = 'Hello world👩‍🦰👩‍👩‍👦‍👦';
const reversed = text.split('').reverse().join('');
console.log(reversed);

Це як би працює, але він розділяє 👩‍👩‍👦‍👦на 4 різні смайли:

const text = 'Hello world👩‍🦰👩‍👩‍👦‍👦';
const reversed = [...text].reverse().join('');
console.log(reversed);

Чи є спосіб отримати бажаний результат?

Відповіді на питання

Якщо у вас є можливість, скористайтеся функцією _.split(), наданою lodash. Починаючи з версії 4.0, _.split() може розділяти смайлики Unicode.

Використання рідного методу .reverse().join('') для зворотного виводу символів має чудово працювати зі смайлами

function reverse(txt) { return _.split(txt, '').reverse().join(''); }
const text = 'Hello world👩‍🦰👩‍👩‍👦‍👦';
console.log(reverse(text));

Для відповіді на запитання необхідно авторизуватись

Війти / Зареєструватися