Vấn đề
Xem xét địa chỉ ipv4 sau -
128.32.10.1
Nếu chúng tôi chuyển đổi nó sang hệ nhị phân, giá trị tương đương sẽ là -
10000000.00100000.00001010.00000001
Và xa hơn nữa nếu chúng ta chuyển đổi số nhị phân này thành số thập phân 32 bit không dấu, số thập phân sẽ là -
2149583361
Do đó, chúng ta có thể nói rằng ipv4 tương đương của 2149583361 là 128.32.10.1
Chúng tôi được yêu cầu viết một hàm JavaScript nhận vào một số nguyên không dấu 32 bit và trả về địa chỉ ipv4 tương đương của nó.
Ví dụ
Sau đây là mã -
const num = 2149583361; const int32ToIp = (num) => { return (num >>> 24 & 0xFF) + '.' + (num >>> 16 & 0xFF) + '.' + (num >>> 8 & 0xFF) + '.' + (num & 0xFF); }; console.log(int32ToIp(num));
Đầu ra
Sau đây là đầu ra của bảng điều khiển -
128.32.10.1