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 相关文章推荐
jquery利用event.which方法获取键盘输入值的代码
Oct 09 Javascript
Javascript中string转date示例代码
Nov 01 Javascript
jQuery获取(选中)单选,复选框,下拉框中的值
Feb 21 Javascript
jQuery实现选项卡切换效果简单演示
Dec 09 Javascript
一个字符串中出现次数最多的字符 统计这个次数【实现代码】
Apr 29 Javascript
JS遍历ul下的li点击弹出li的索引的实现方法
Sep 19 Javascript
详解angular2封装material2对话框组件
Mar 03 Javascript
vue 和vue-touch 实现移动端左右导航效果(仿京东移动站导航)
Apr 22 Javascript
微信小程序实现图片懒加载的示例代码
Dec 13 Javascript
jQuery基于随机数解决中午吃什么去哪吃问题示例
Dec 29 jQuery
Node 搭建一个静态资源服务器的实现
May 20 Javascript
vue 实现微信浮标效果
Sep 01 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
Discuz 5.0 中读取纯真IP数据库函数分析
2007/03/16 PHP
PHP中集成PayPal标准支付的实现方法分享
2012/02/06 PHP
apache配置虚拟主机的方法详解
2013/06/17 PHP
完美解决php 导出excle的.csv格式的数据时乱码问题
2017/02/18 PHP
php文件包含目录配置open_basedir的使用与性能详解
2017/04/03 PHP
PHP读取Excel类文件
2017/05/15 PHP
PDO::query讲解
2019/01/29 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
2019/05/06 PHP
js 纯数字不重复排列的另类方法
2010/07/17 Javascript
为超链接加上disabled后的故事
2010/12/10 Javascript
jQuery+JSON实现AJAX二级联动实例分析
2015/12/18 Javascript
JavaScript中的this,call,apply使用及区别详解
2016/01/29 Javascript
jQuery模拟爆炸倒计时功能实例代码
2017/08/21 jQuery
三种Webpack打包方式(小结)
2018/09/19 Javascript
jQuery实现点击图标div循环放大缩小功能
2018/09/30 jQuery
JavaScript创建对象方式总结【工厂模式、构造函数模式、原型模式等】
2018/12/19 Javascript
JavaScript学习笔记之基于定时器实现图片无缝滚动功能详解
2019/01/09 Javascript
jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法分析
2019/03/06 jQuery
javascript实现的字符串转换成数组操作示例
2019/06/13 Javascript
vue 组件开发原理与实现方法详解
2019/11/29 Javascript
js校验开始时间和结束时间
2020/05/26 Javascript
javascript中正则表达式语法详解
2020/08/07 Javascript
python使用正则表达式检测密码强度源码分享
2014/06/11 Python
python批量生成本地ip地址的方法
2015/03/23 Python
Python 机器学习库 NumPy入门教程
2018/04/19 Python
pandas删除指定行详解
2019/04/04 Python
python 实现数据库中数据添加、查询与更新的示例代码
2020/12/07 Python
去除python中的字符串空格的简单方法
2020/12/22 Python
Luxplus丹麦:香水和个人护理折扣
2018/04/23 全球购物
C#里面如何倒序排列一个数组的元素?
2013/06/21 面试题
安全生产标语
2014/06/06 职场文书
银行授权委托书范本
2014/10/04 职场文书
行政诉讼答辩状
2015/05/21 职场文书
搭讪开场白台词大全
2015/05/28 职场文书
爱鸟护鸟的宣传语
2015/07/13 职场文书
校运会宣传稿大全
2015/07/23 职场文书