ปัญหา
พิจารณาที่อยู่ ipv4 ต่อไปนี้ -
128.32.10.1
หากเราแปลงเป็นเลขฐานสอง ค่าที่เท่ากันจะเป็น −
10000000.00100000.00001010.00000001
และถ้าเราแปลงเลขฐานสองนี้เป็นทศนิยม 32 บิตที่ไม่ได้ลงนาม ทศนิยมจะเป็น -
2149583361
ดังนั้น เราสามารถพูดได้ว่า ipv4 ที่เทียบเท่ากับ 2149583361 คือ 128.32.10.1
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้จำนวนเต็ม 32 บิตที่ไม่ได้ลงนามและส่งคืนที่อยู่ ipv4 ที่เทียบเท่ากัน
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const num = 2149583361; const int32ToIp = (num) => { return (num >>> 24 & 0xFF) + '.' + (num >>> 16 & 0xFF) + '.' + (num >>> 8 & 0xFF) + '.' + (num & 0xFF); }; console.log(int32ToIp(num));
ผลลัพธ์
ต่อไปนี้เป็นเอาต์พุตคอนโซล -
128.32.10.1