js如何将IP地址转换为整型?
墨初 Web前端 1811阅读
在处理IP地址时,如果将IP地址先转为整数类型,再进行比对或处理是很方便的,下面就提供两种利用js脚本将IP地址转为整数的自定义函数方法,大家可以借鉴使用。
js将IP地址转成整型的方法
方法1:
js将IP地址转成整型的自定义函数
/**
* @name ip地址转为整数类型
* @param ip ip地址
*
* @return 被转为整输的IP地址
* https://73so.com
*/
function ipToint(ip) {
var num = 0;
ip = ip.split(".");
num = Number(ip[0]) * 256 * 256 * 256 + Number(ip[1]) * 256 * 256 + Number(ip[2]) * 256 + Number(ip[3]);
num = num >>> 0;
return num;
}
console.log(ipToint('192.168.31.1'));
// 3232243457
方法2:
JS自定义IP转整型函数
/**
* @name ip地址转为整数类型
* @param ip ip地址
*
* @return 被转为整输的IP地址
* https://73so.com
*/
function ipToNumber(ip) {
var num = 0;
if (ip == "") {
return num;
}
var aNum = ip.split(".");
if (aNum.length != 4) {
return num;
}
num += parseInt(aNum[0]) << 24;
num += parseInt(aNum[1]) << 16;
num += parseInt(aNum[2]) << 8;
num += parseInt(aNum[3]) << 0;
//这个很关键,不然可能会出现负数的情况
num = num >>> 0;
return num;
}
console.log(ipToNumber('192.168.0.1'));
// 3232235521
ps:个人推荐使用用方法1里面的自定义函数,JS将IP地址转为整数!