Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JavaScript에서 부호 없는 32비트 십진수를 해당 ipv4 주소로 변환

<시간/>

문제

다음 ipv4 주소를 고려하십시오 -

128.32.10.1

이진법으로 변환하면 등가는 -

가 됩니다.
10000000.00100000.00001010.00000001

그리고 이 바이너리를 부호 없는 32비트 십진수로 변환하면 십진수는 -

가 됩니다.
2149583361

따라서 2149583361에 해당하는 ipv4는 128.32.10.1이라고 말할 수 있습니다.

32비트의 부호 없는 정수를 받아 이에 상응하는 ipv4 주소를 반환하는 JavaScript 함수를 작성해야 합니다.

예시

다음은 코드입니다 -

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