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


Posted in Javascript onDecember 13, 2013

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; 
} 
}
Javascript 相关文章推荐
开发跨浏览器javascript常见注意事项
Jan 01 Javascript
可恶的ie8提示缺少id未定义
Mar 20 Javascript
10分钟学会写Jquery插件实例教程
Sep 06 Javascript
js实现索引图片切换效果
Nov 21 Javascript
jquery特效 点击展示与隐藏全文
Dec 09 Javascript
Node.js编写爬虫的基本思路及抓取百度图片的实例分享
Mar 12 Javascript
JS中的事件委托实例浅析
Mar 22 Javascript
vuex与组件联合使用的方法
May 10 Javascript
vue自定义一个v-model的实现代码
Jun 21 Javascript
Js通过AES加密后PHP用Openssl解密的方法
Jul 12 Javascript
JavaScript中的函数申明、函数表达式、箭头函数
Dec 06 Javascript
解决element-ui里的下拉多选框 el-select 时,默认值不可删除问题
Aug 14 Javascript
Extjs4中的分页应用结合前后台
Dec 13 #Javascript
php显示当前文件所在的文件以及文件夹所有文件以树形展开
Dec 13 #Javascript
window.print打印指定div实例代码
Dec 13 #Javascript
Javascript中call的两种用法实例
Dec 13 #Javascript
分享JavaScript获取网页关闭与取消关闭的事件
Dec 13 #Javascript
js获取触发事件元素在整个网页中的绝对坐标(示例代码)
Dec 13 #Javascript
浅析XMLHttpRequest的缓存问题
Dec 13 #Javascript
You might like
十大催泪虐心动漫,你能坚持看到第几部?
2020/03/04 日漫
[原创]php正则删除img标签的方法示例
2017/05/27 PHP
javascript 自定义事件初探
2009/08/21 Javascript
javascript运行机制之this详细介绍
2014/02/07 Javascript
采用call方式实现js继承
2014/05/20 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
EasyUI学习之Combobox下拉列表(1)
2016/12/29 Javascript
js数字计算 误差问题的快速解决方法
2017/02/28 Javascript
EasyUI的TreeGrid的过滤功能的解决思路
2017/08/08 Javascript
微信小程序使用setData修改数组中单个对象的方法分析
2018/12/30 Javascript
详解Js里的for…in和for…of的用法
2019/03/28 Javascript
基于postman获取动态数据过程详解
2020/09/08 Javascript
[00:57]英雄,你的补给到了!
2020/11/13 DOTA
python改变日志(logging)存放位置的示例
2014/03/27 Python
Python实现多行注释的另类方法
2014/08/22 Python
如何用itertools解决无序排列组合的问题
2017/05/18 Python
Python cookbook(数据结构与算法)同时对数据做转换和换算处理操作示例
2018/03/23 Python
python 内置函数汇总详解
2019/09/16 Python
基于python requests selenium爬取excel vba过程解析
2020/08/12 Python
python drf各类组件的用法和作用
2021/01/12 Python
加拿大鞋子连锁店:Town Shoes
2016/09/26 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
MyBag中文网:英国著名的时尚包袋电商零售网站
2020/07/31 全球购物
如何在Cookie里面保存Unicode和国际化字符
2013/05/25 面试题
入党积极分子评语
2014/05/04 职场文书
党务公开方案
2014/05/06 职场文书
中学生运动会口号
2014/06/07 职场文书
计划生育工作总结2015
2015/04/03 职场文书
二手房购房意向书
2015/05/09 职场文书
《草虫的村落》教学反思
2016/02/20 职场文书
2016年学生会感恩节活动总结
2016/04/01 职场文书
详解分布式系统中如何用python实现Paxos
2021/05/18 Python
SpringCloud的JPA连接PostgreSql的教程
2021/06/26 Java/Android
Mysql数据库按时间点恢复实战记录
2021/06/30 MySQL
Nginx缓存设置案例详解
2021/09/15 Servers
angular4实现带搜索的下拉框
2022/03/25 Javascript