Chúng tôi được yêu cầu viết một hàm JavaScript nhận vào một chuỗi có độ dài thay đổi bất kỳ đại diện cho một số.
Hàm của chúng ta phải chuyển đổi chuỗi số thành chuỗi ký tự tương ứng.
Ví dụ - Nếu chuỗi số là -
const str = '78956';
Sau đó, đầu ra phải là -
const output = 'ghief';
Nếu chuỗi số là -
const str = '12345';
Sau đó, chuỗi đầu ra phải là -
const output = 'lcde';
Lưu ý rằng chúng tôi đã không chuyển đổi 1 và 2 thành các bảng chữ cái riêng biệt vì 12 cũng đại diện cho một bảng chữ cái. Vì vậy, chúng ta phải xem xét trường hợp này khi viết hàm của mình.
Ở đây, chúng tôi giả định rằng chuỗi số sẽ không chứa 0 trong đó, nếu có chứa thì 0 sẽ được ánh xạ với chính nó.
Ví dụ
Hãy để chúng tôi viết mã cho chức năng này -
const str = '12345'; const str2 = '78956'; const convertToAlpha = numStr => { const legend = '0abcdefghijklmnopqrstuvwxyz'; let alpha = ''; for(let i = 0; i < numStr.length; i++){ const el = numStr[i], next = numStr[i + 1]; if(+(el + next) <= 26){ alpha += legend[+(el + next)]; i++; } else{ alpha += legend[+el]; }; }; return alpha; }; console.log(convertToAlpha(str)); console.log(convertToAlpha(str2));
Đầu ra
Và đầu ra trong bảng điều khiển sẽ là -
lcde ghief