javascript判断两个IP地址是否在同一个网段的实现思路

 我来答
叔初晏娅欣
2020-06-18 · TA获得超过3756个赞
知道大有可为答主
回答量:3130
采纳率:33%
帮助的人:162万
展开全部
1)基本思路:
要判断两个IP地址是否在同一个网段,将它们的IP地址分别与子网掩码做与运算,得到的结果为网络号,如果网络号相同,就在同一子网,否则,不在同一子网。
2)具体实现:
复制代码
代码如下:
/**
*
[isEqualIPAddress
判断两个IP地址是否在同一个网段]
*
@param
{[String]}
addr1
[地址一]
*
@param
{[String]}
addr2
[地址二]
*
@param
{[String]}
mask
[子网掩码]
*
@return
{Boolean}
[true
or
false]
*/
function
isEqualIPAddress
(addr1,addr2,mask){
if(!addr1
||
!addr2
||
!mask){
console.log("各参数不能为空");
return
false;
}
var
res1
=
[],
res2
=
[];
addr1
=
addr1.split(".");
addr2
=
addr2.split(".");
mask
=
mask.split(".");
for(var
i
=
0,ilen
=
addr1.length;
i
<
ilen
;
i
+=
1){
res1.push(parseInt(addr1[i])
&
parseInt(mask[i]));
res2.push(parseInt(addr2[i])
&
parseInt(mask[i]));
}
if(res1.join(".")
==
res2.join(".")){
console.log("在同一个网段");
return
true;
}else{
console.log("不在同一个网段");
return
false;
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式