Помогите застрял в данной проблеме

нужно сделать переключатель(чекбокс)с надписью “транслитерировать”. При его активации в тексте сообщения(текст мы набираем в инпуте) все кириллические символы переводятся в аналогичные латинские, при деактивации - все латинские приводятся в аналогичные кириллические.


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

Автор решения: Alex Sazonov

Написать функцию, которая будет маппить одно на другое. Ну вот небольшой пример. Первое, что пришло в голову. Может, есть способ более оптимально это сделать. Но это по крайней мере работает. Остаётся только наполнить массивы.

const RU = ['а', 'б', 'в', 'г'];
const EN = ['a', 'b', 'v', 'g'];

function translate(str) {
  return str.split('').map((el, i) => {
    return EN[RU.indexOf(el)];
  }).join('');
}

console.log(translate('бага'));
console.log(translate('гага'));
console.log(translate('ага'));
console.log(translate('баба'));

→ Ссылка