Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Chuyển đổi chữ cái thành chữ Hy Lạp trong JavaScript

Vấn đề

Chúng ta cần viết một hàm JavaScript nhận vào một chuỗi chữ cái tiếng Anh in hoa str làm đối số duy nhất. Xét ánh xạ sau giữa chữ Anh và chữ 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ả chữ cái có ánh xạ Hy Lạp, hàm phải tạo chuỗi mới thay thế chữ Anh bằng chữ Hy Lạp tương ứng; nếu không có ánh xạ thì giữ nguyên chữ Anh.

Ví dụ, nếu đầu vào là:

Đầu vào

const str = 'PLAYING';

Đầu ra

const output = 'ρlαγιηg';

Ví dụ

Dưới đây là mã thực hiện:

const str = 'PLAYING';
const convertLang = (str) => {
  const map = {
    a: 'α', b: 'β', d: 'δ', e: 'ε',
    i: 'ι', k: 'κ', n: 'η', o: 'θ',
    p: 'ρ', r: 'π', t: 'τ', u: 'μ',
    v: 'υ', 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));

Kết quả

ρlαγιηg