Vấn đề
Chúng tôi được yêu cầu viết một hàm JavaScript nhận một thông điệp được giải mã và trả về thông điệp nguồn của nó.
Tất cả những gì chúng tôi biết là thuật toán được sử dụng để mã hóa thông báo đó.
Và thuật toán là -
- Đảo ngược chuỗi thông báo.
- Thay thế mọi chữ cái bằng mã ASCII của nó trong dấu ngoặc kép (A thành '65', h thành '104', v.v.).
- Chèn chữ số và khoảng trắng.
Ví dụ
Sau đây là mã -
const str = '12 hello world 30'; const decryptString = (str = '') => { const alpha = 'abcdefghijklmnopqrstuvwxyz'; let res = ''; for(let i = str.length - 1; i >= 0; i--){ const el = str[i]; if(alpha.includes(el.toLowerCase())){ res += `'${el.charCodeAt(0)}'`; }else{ res += el; }; }; return res; }; console.log(decryptString(str));
Đầu ra
Sau đây là đầu ra của bảng điều khiển -
03 '100''108''114''111''119' '111''108''108''101''104' 21