javascript判斷兩個(gè)IP地址是否在同一個(gè)網(wǎng)段的實(shí)現(xiàn)思路
1)基本思路:
要判斷兩個(gè)IP地址是否在同一個(gè)網(wǎng)段,將它們的IP地址分別與子網(wǎng)掩碼做與運(yùn)算,得到的結(jié)果為網(wǎng)絡(luò)號(hào),如果網(wǎng)絡(luò)號(hào)相同,就在同一子網(wǎng),否則,不在同一子網(wǎng)。
2)具體實(shí)現(xiàn):
/**
* [isEqualIPAddress 判斷兩個(gè)IP地址是否在同一個(gè)網(wǎng)段]
* @param {[String]} addr1 [地址一]
* @param {[String]} addr2 [地址二]
* @param {[String]} mask [子網(wǎng)掩碼]
* @return {Boolean} [true or false]
*/
function isEqualIPAddress (addr1,addr2,mask){
if(!addr1 || !addr2 || !mask){
console.log("各參數(shù)不能為空");
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("在同一個(gè)網(wǎng)段");
return true;
}else{
console.log("不在同一個(gè)網(wǎng)段");
return false;
}
}
相關(guān)文章
JavaScript中使用sencha gridpanel 編輯單元格、改變單元格顏色
ExtJS中的表格功能非常強(qiáng)大,包括了排序、緩存、拖動(dòng)、隱藏某一列、自動(dòng)顯示行號(hào)、列匯總、單元格編輯等實(shí)用功能,通過(guò)本篇文章給大家介紹JavaScript中使用sencha gridpanel 編輯單元、改變單元格顏色,感興趣的朋友一起學(xué)習(xí)2015-11-11Bootstrap 最常用的JS插件系列總結(jié)(圖片輪播、標(biāo)簽切換等)
這篇文章主要為大家詳細(xì)介紹了Bootstrap 最常用的JS插件,包括圖片輪播carousel.js、標(biāo)簽切換tab.js、滾動(dòng)監(jiān)聽(tīng)scrollspy.js等,感興趣的小伙伴們可以參考一下2016-07-07用Javascript數(shù)組處理多個(gè)字符串的連接問(wèn)題
小技巧 用Javascript數(shù)組處理多個(gè)字符串的連接問(wèn)題,大家可以參考下。2009-08-08修改file按鈕的默認(rèn)樣式實(shí)現(xiàn)代碼
file按鈕作為上傳文件使用,不過(guò)默認(rèn)的樣式確實(shí)讓人不敢恭維啊,如何才可以修改為漂亮一點(diǎn)的呢?接下來(lái)與大家分享下具體的實(shí)現(xiàn)代碼,感興趣的朋友可以參考下哈2013-04-04bootstrap響應(yīng)式導(dǎo)航條模板使用詳解(含下拉菜單,彈出框)
這篇文章主要為大家詳細(xì)介紹了bootstrap響應(yīng)式導(dǎo)航條模板使用詳解,含下拉菜單,彈出框效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-11-11JavaScript 經(jīng)典實(shí)例日常收集整理(常用經(jīng)典)
本文是小編日常收集整理些js經(jīng)典實(shí)例,非常具有參考借鑒價(jià)值,需要的朋友一起了解了解吧2016-03-03