Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript lấy một chuỗi các bảng chữ cái tiếng Anh viết hoa, str, làm đối số đầu tiên và duy nhất.
Hãy xem xét ánh xạ sau giữa các chữ cái tiếng Anh và tiếng Hy Lạp -
A=α (Alpha) B=β (Beta) D=δ (Delta) E=ε (Epsilon) I=ι (Iota) K=κ (Kappa) N=η (Eta) O=θ (Theta) P=ρ (Rho) R=π (Pi) T=τ (Tau) U=μ (Mu) V=υ (Upsilon) W=ω (Omega) X=χ (Chi) Y=γ (Gamma)
Đối với tất cả các bảng chữ cái có ánh xạ tiếng Hy Lạp, hàm của chúng ta nên tạo một chuỗi mới trong đó chữ cái tiếng Anh được thay thế bằng chữ cái tiếng Hy Lạp tương ứng và nếu không có ánh xạ nào, chúng ta nên tiếp tục với bảng chữ cái tiếng Anh.
Ví dụ:nếu đầu vào của hàm là -
Đầu vào
const str = 'PLAYING';
Đầu ra
const output = 'ρlαγιηg';
Ví dụ
Sau đây là mã -
const str = 'PLAYING'; const convertLang = (str) => { const map = { a:'α',b:'β',d:'δ',e:'ε', i:'ι',k:'κ',n:'η',o:'θ', p:'ρ',r:'π',t:'τ',u:'μ', char:'υ',w:'ω',x:'χ',y:'γ' }; return str.replace(/./g, char => { if (map[char.toLowerCase()]){ return char === char.toUpperCase() ? map[char.toLowerCase()] : map[char]; }; return char.toLowerCase(); }); }; console.log(convertLang(str))
Đầu ra
Ρlαγιηg