JavaScriptでIPv4アドレスを32ビット整数に変換する方法


方法1: ビット演算を使用する

function ipv4ToInt32(ip) {
  const parts = ip.split('.');
  return (parseInt(parts[0]) << 24) + (parseInt(parts[1]) << 16) + (parseInt(parts[2]) << 8) + parseInt(parts[3]);
}
const ipAddress = '192.168.0.1';
const int32Value = ipv4ToInt32(ipAddress);
console.log(int32Value); // 結果: 3232235521

方法2: ドット記法を使用する

function ipv4ToInt32(ip) {
  const parts = ip.split('.');
  return parts.reduce((acc, val) => (acc * 256) + parseInt(val), 0);
}
const ipAddress = '192.168.0.1';
const int32Value = ipv4ToInt32(ipAddress);
console.log(int32Value); // 結果: 3232235521

どちらの方法でも、IPv4アドレスの各部分を整数に変換し、ビットシフトまたは乗算を使用して32ビット整数に変換します。

この方法を使用すると、IPv4アドレスを整数として扱いやすくなります。たとえば、範囲内のアドレスを計算したり、比較したりする際に便利です。

以上がJavaScriptでIPv4アドレスを32ビット整数に変換する方法です。ご参考までにお使いください。