Транслитерация с русского на английский

Транслитерация текста на русском языке с кириллицы на латиницу с помощью JavaScript. Три варианта:

  1. Пары символов хранятся в JSON-объекте
  2. Пары символов хранятся в массиве
  3. Символы заменяются один за другим с помощью replace()

1. Символы в JSON-объекте

Транслитерация фразы «Транслитерация с русского на английский с помощью JavaScript #1»

HTML код:


<div class="example"></div>

JavaScript код:


<script>
var text = 'Транслитерация с русского на английский с помощью JavaScript #1';
var result = '';
var characters = {'а':'a', 'б':'b', 'в':'v', 'г':'g', 'д':'d', 'е':'e', 'ё':'yo', 'ж':'zh', 'з':'z', 'и':'i', 'й':'y', 'к':'k', 'л':'l', 'м':'m', 'н':'n', 'о':'o', 'п':'p', 'р':'r', 'с':'s', 'т':'t', 'у':'u', 'ф':'f', 'х':'h', 'ц':'c', 'ч':'ch', 'ш':'sh', 'щ':'shch', 'ь':'', 'ы':'y', 'ъ':'', 'э':'e', 'ю':'yu', 'я':'ya', 'А':'A', 'Б':'B', 'В':'V', 'Г':'G', 'Д':'D', 'Е':'E', 'Ё':'Yo', 'Ж':'Zh', 'З':'Z', 'И':'I', 'Й':'Y', 'К':'K', 'Л':'L', 'М':'M', 'Н':'N', 'О':'O', 'П':'P', 'Р':'R', 'С':'S', 'Т':'T', 'У':'U', 'Ф':'F', 'Х':'H', 'Ц':'C', 'Ч':'Ch', 'Ш':'Sh', 'Щ':'Shch', 'Ь':'', 'Ы':'Y', 'Ъ':'', 'Э':'E', 'Ю':'Yu', 'Я':'Ya'};

for ( var i = 0; i < text.length; i++ ) {
	if ( characters[ text[i] ] == undefined ){
		result += text[i];
	} else {
		result += characters[ text[i] ];
	}
};

// Printing the resulting text
document.querySelector('.example').textContent = result;
</script>

2. Символы в массиве

Транслитерация фразы «Транслитерация с русского на английский с помощью JavaScript #2»

HTML код:


<div class="example example2"></div>

JavaScript код:


<script>
var text = 'Транслитерация с русского на английский с помощью JavaScript #2';
var result2 = '';
var chars = [];

chars['А']='A'; chars['Б']='B'; chars['В']='V'; chars['Г']='G'; chars['Д']='D'; chars['Е']='E'; chars['Ё']='YO'; chars['Ж']='ZH'; chars['З']='Z'; chars['И']='I'; chars['Й']='Y'; chars['К']='K'; chars['Л']='L'; chars['М']='M'; chars['Н']='N'; chars['О']='O'; chars['П']='P'; chars['Р']='R'; chars['С']='S'; chars['Т']='T'; chars['У']='U'; chars['Ф']='F'; chars['Х']='H'; chars['Ц']='C'; chars['Ч']='CH'; chars['Ш']='SH'; chars['Щ']='SHCH'; chars['Ь']=''; chars['Ы']='Y'; chars['Ъ']=''; chars['Э']='E'; chars['Ю']='YU'; chars['Я']='YA'; chars['а']='a'; chars['б']='b'; chars['в']='v'; chars['г']='g'; chars['д']='d'; chars['е']='e'; chars['ё']='yo'; chars['ж']='zh'; chars['з']='z'; chars['и']='i'; chars['й']='y'; chars['к']='k'; chars['л']='l'; chars['м']='m'; chars['н']='n'; chars['о']='o'; chars['п']='p'; chars['р']='r'; chars['с']='s'; chars['т']='t'; chars['у']='u'; chars['ф']='f'; chars['х']='h'; chars['ц']='c'; chars['ч']='ch'; chars['ш']='sh'; chars['щ']='shch'; chars['ь']=''; chars['ы']='i'; chars['ъ']=''; chars['э']='e'; chars['ю']='yu'; chars['я']='ya';

for ( var i = 0; i < text.length; ++i ) {
	if ( chars[ text[i] ] == undefined ){
		result2 += text[i];
	} else {
		result2 += chars[ text[i] ];
	}
}

// Printing the resulting text
document.querySelector('.example2').textContent = result2;
</script>

3. Замена символов с помощью replace()

Транслитерация фразы «Транслитерация с русского на английский с помощью JavaScript #3»

HTML код:


<div class="example example3"></div>

JavaScript код:


<script>
var text = 'Транслитерация с русского на английский с помощью JavaScript #3';

text = text.replace(/\u0410/g, 'А');
text = text.replace(/\u0411/g, 'B');
text = text.replace(/\u0412/g, 'V');
text = text.replace(/\u0413/g, 'G');
text = text.replace(/\u0414/g, 'D');
text = text.replace(/\u0415/g, 'E');
text = text.replace(/\u0401/g, 'Yo');
text = text.replace(/\u0416/g, 'Zh');
text = text.replace(/\u0417/g, 'Z');
text = text.replace(/\u0418/g, 'I');
text = text.replace(/\u0419/g, 'Y');
text = text.replace(/\u041A/g, 'K');
text = text.replace(/\u041B/g, 'L');
text = text.replace(/\u041C/g, 'M');
text = text.replace(/\u041D/g, 'N');
text = text.replace(/\u041E/g, 'O');
text = text.replace(/\u041F/g, 'P');
text = text.replace(/\u0420/g, 'R');
text = text.replace(/\u0421/g, 'S');
text = text.replace(/\u0422/g, 'T');
text = text.replace(/\u0423/g, 'U');
text = text.replace(/\u0424/g, 'F');
text = text.replace(/\u0425/g, 'H');
text = text.replace(/\u0426/g, 'C');
text = text.replace(/\u0427/g, 'Ch');
text = text.replace(/\u0428/g, 'Sh');
text = text.replace(/\u0429/g, 'Shch');
text = text.replace(/\u042A/g, '');
text = text.replace(/\u042B/g, 'Y');
text = text.replace(/\u042C/g, '');
text = text.replace(/\u042D/g, 'E');
text = text.replace(/\u042E/g, 'Yu');
text = text.replace(/\u042F/g, 'Ya');
text = text.replace(/\u0430/g, 'a');
text = text.replace(/\u0431/g, 'b');
text = text.replace(/\u0432/g, 'v');
text = text.replace(/\u0433/g, 'g');
text = text.replace(/\u0434/g, 'd');
text = text.replace(/\u0435/g, 'e');
text = text.replace(/\u0451/g, 'yo');
text = text.replace(/\u0436/g, 'zh');
text = text.replace(/\u0437/g, 'z');
text = text.replace(/\u0438/g, 'i');
text = text.replace(/\u0439/g, 'y');
text = text.replace(/\u043A/g, 'k');
text = text.replace(/\u043B/g, 'l');
text = text.replace(/\u043C/g, 'm');
text = text.replace(/\u043D/g, 'n');
text = text.replace(/\u043E/g, 'o');
text = text.replace(/\u043F/g, 'p');
text = text.replace(/\u0440/g, 'r');
text = text.replace(/\u0441/g, 's');
text = text.replace(/\u0442/g, 't');
text = text.replace(/\u0443/g, 'u');
text = text.replace(/\u0444/g, 'f');
text = text.replace(/\u0445/g, 'h');
text = text.replace(/\u0446/g, 'c');
text = text.replace(/\u0447/g, 'ch');
text = text.replace(/\u0448/g, 'sh');
text = text.replace(/\u0449/g, 'shch');
text = text.replace(/\u044A/g, '');
text = text.replace(/\u044B/g, 'y');
text = text.replace(/\u044C/g, '');
text = text.replace(/\u044D/g, 'e');
text = text.replace(/\u044E/g, 'yu');
text = text.replace(/\u044F/g, 'ya');

// Printing the resulting string
document.querySelector('.example3').textContent = text;
</script>

Поддержка в браузерах

  • Windows: Google Chrome 3.0+, Firefox 3.5+, Edge 12.0+, Internet Explorer 8.0+, Opera 10.5+, Safari 4.0+
  • Android: Samsung Internet 1.0+, Chrome 18.0+, Firefox 4.0+, Opera 11.0+
  • iOS: Safari 4.0+

Теги: JavaScript

  • Опубликовано: 5 Ноября, 2023
  • Последнее редактирование: 6 Ноября, 2023
Яндекс.Директ Google AdWords Bing Ads Amazon Product Ads HTML CSS JavaScript jQuery PHP CMS CMF MODX Wordpress Drupal ExpressionEngine htaccess SEO SEM HTML CSS JavaScript jQuery PHP CMS CMF MODX Wordpress Drupal ExpressionEngine htaccess SEO SEM Яндекс.Директ Google AdWords Bing Ads Amazon Product Ads