Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как изменить символы переменной, с кириллицы на латинские (https://javascript.ru/forum/misc/75594-kak-izmenit-simvoly-peremennojj-s-kirillicy-na-latinskie.html)

marjachok 22.10.2018 23:30

Как изменить символы переменной, с кириллицы на латинские
 
Подскажите как объявить словарь с заменами, на PHP это выглядит так:

$rus=array('А','Б','В','Г','Д','Е','Ё','Ж','З','И','Й','К','Л','М','Н','О','П','Р','С','Т','У','Ф','Х','Ц','Ч','Ш','Щ','Ъ','Ы','Ь','Э','Ю','Я','а','б','в','г','д','е','ё','ж','з','и','й','к','л','м','н','о','п','р','с','т','у','ф','х','ц','ч','ш','щ','ъ','ы','ь','э','ю','я',' ');
$lat=array('a','b','v','g','d','e','e','gh','z','i','y','k','l','m','n','o','p','r','s','t','u','f','h','c','ch','sh','sch','y','y','y','e','yu','ya','a','b','v','g','d','e','e','gh','z','i','y','k','l','m','n','o','p','r','s','t','u','f','h','c','ch','sh','sch','y','y','y','e','yu','ya',' ');

$text = str_replace($rus, $lat, $text);


А как это сделать на Javascript?

j0hnik 22.10.2018 23:56

var dic = {
'п':'p',
'р':'r',
'и':'i',
'в':'v',
'е':'e',
'т':'t',
'м':'m'
};
 
var rus = "привет мир";
var eng = rus.split('').map(el=>el = dic[el]||el).join('');
console.log(eng);


для всех символов такой словарь нужно сделать

Malleys 23.10.2018 01:53

Цитата:

Сообщение от marjachok
А как это сделать на Javascript?

Используйте, например, пакет cyrillic-to-translit-js

marjachok 23.10.2018 03:04

А в место какой переменной надо поставить, мне нужную переменную "text" и чем заменить "привет мир"

marjachok 23.10.2018 03:32

j0hnik,
А в место какой переменной надо поставить, мне нужную переменную "text" и чем заменить "привет мир"

j0hnik 23.10.2018 03:33

marjachok,
var text = text.split('').map(el=>el = dic[el]||el).join('');

Alexandroppolus 23.10.2018 12:20

Цитата:

Сообщение от j0hnik
rus.split('').map(el=>el = dic[el]||el).join('');

var dic = {
'п':'p',
'р':'r',
'и':'i',
'в':'v',
'е':'e',
'т':'t',
'м':'m'
};
 
var rus = "привет мир";
var eng = rus.replace(/./g, el => dic[el]||el);
alert(eng);


Часовой пояс GMT +3, время: 13:02.