hi,欢迎访问本站!
当前位置: 首页Web前端正文

js如何将IP地址转换为整型?

墨初 Web前端 905阅读

在处理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地址转为整数!

声明:无特别说明,转载请标明本文来源!
相关推荐