Vấn đề
Chúng tôi được yêu cầu viết hai hàm JavaScript -
- Hàm đầu tiên phải nhận một url dài và trả về một url ngắn tương ứng với nó.
- Hàm thứ hai sẽ sử dụng url ngắn và chuyển hướng đến url ban đầu.
Ví dụ
Sau đây là mã -
const url = 'https://www.google.com/search?client=firefox-b-d&q=google+search';
const obj = {};
const urlShortener = (longURL = '') => {
let shortURL = "short.ly/" + longURL.replace(/[^a-z]/g,'').slice(-4);
if(!obj[shortURL]){
obj[shortURL] = longURL;
};
return shortURL;
}
const urlRedirector = (shortURL = '') => {
return obj[shortURL];
};
const short = urlShortener(url);
const original = urlRedirector(short);
console.log(short);
console.log(original); Đầu ra
Sau đây là đầu ra của bảng điều khiển -
short.ly/arch https://www.google.com/search?client=firefox-b-d&q=google+search