Deff, русский->английский
var pat = /\S/img ;
var text = 'а б в г д е ё ж з и й к л м н о п р с т у ф х ц ч ш щ ы ь э ю я' ;
text = text.replace(pat, function(a) {
if (a=='а') return 'a' ;
if (a=='б') return 'b' ;
if (a=='в') return 'v' ;
if (a=='г') return 'g' ;
if (a=='д') return 'd' ;
if (a=='е'||a=='э') return 'e' ;
if (a=='ё') return 'yo' ;
if (a=='ж') return 'zh' ;
if (a=='з') return 'z' ;
if (a=='и'||a=='й') return 'i' ;
if (a=='к') return 'k' ;
if (a=='л') return 'l' ;
if (a=='м') return 'm' ;
if (a=='н') return 'n' ;
if (a=='о') return 'o' ;
if (a=='п') return 'p' ;
if (a=='р') return 'r' ;
if (a=='с') return 's' ;
if (a=='т') return 't' ;
if (a=='у') return 'u' ;
if (a=='ф') return 'f' ;
if (a=='х') return 'h' ;
if (a=='ц') return 'ts' ;
if (a=='ч') return 'ch' ;
if (a=='ш') return 'sh' ;
if (a=='щ') return 'sch' ;
if (a=='ы') return 'y' ;
if (a=='ь') return "'" ;
if (a=='ю') return 'yu' ;
if (a=='я') return 'ya' ;
}) ;
alert (text) ;