亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

js針對(duì)ip地址、子網(wǎng)掩碼、網(wǎng)關(guān)的邏輯性判斷

 更新時(shí)間:2016年01月06日 08:53:55   作者:Rock_sz  
這篇文章主要介紹了js針對(duì)ip地址、子網(wǎng)掩碼、網(wǎng)關(guān)的邏輯性判斷,感興趣的小伙伴們可以參考一下

因?yàn)橐鲮o態(tài)地址配置的js校驗(yàn),找了好多資料發(fā)現(xiàn)網(wǎng)上都是關(guān)于ip,mask的有效性檢查,沒有ip,submask,gateway的邏輯性判斷,自己寫下代碼供需要的人參考。

普及下網(wǎng)關(guān)地址知識(shí):

第一點(diǎn):進(jìn)行與運(yùn)算1與1得1,1與0為0,0與0為0。首先把ip和子網(wǎng)掩碼展開
10.70.64.223        00001010 .01000110.01000000.11011111
255.255.255。0   111111111.11111111.11111111.00000000
網(wǎng)段就是         00001010 .01000110.01000000.00000000
然后轉(zhuǎn)換成十進(jìn)制就是:10.70.64.0

第二點(diǎn):IP地址與子網(wǎng)掩碼做與運(yùn)算和網(wǎng)關(guān)地址與子網(wǎng)掩碼做與運(yùn)算得到的結(jié)果應(yīng)該是一致的就對(duì)了,也就是主機(jī)號(hào)一致。
我這里是先用js將ip,mask,gateway按照‘.'分隔后相與做判斷的。

第三點(diǎn):js的按位與運(yùn)算

result = 【整數(shù)1】 & 【整數(shù)1】
& 對(duì)兩個(gè) 32 位表達(dá)式的每一個(gè)位執(zhí)行按位“與”運(yùn)算。 如果兩個(gè)位均為 1,則結(jié)果是 1。 否則,結(jié)果為 0。

分享js針對(duì)ip地址、子網(wǎng)掩碼、網(wǎng)關(guān)的邏輯性判斷詳細(xì)代碼

function checkIP(ip) 
{ 
 obj=ip;
 var exp=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/; 
 var reg = obj.match(exp); 
 if(reg==null) 
 { 
  return false;//不合法
 } 
 else 
 { 
  return true; //合法
 } 
}
 
function checkMask(mask) 
{ 
 obj=mask; 
 var exp=/^(254|252|248|240|224|192|128|0)\.0\.0\.0|255\.(254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(254|252|248|240|224|192|128|0)$/; 
 var reg = obj.match(exp); 
 if(reg==null) 
 { 
   return false; //"非法"
 } 
  else 
 { 
   return true; //"合法"
 } 
} 
 var static_ip= document.getElementById('static_ip').value;
  var static_mask= document.getElementById('static_mask').value; 
  var static_gw= document.getElementById('static_gw').value;

  
  if (static_ip=='')
  {
   // $("#static_ip_error").css("display","block");
   document.getElementById('static_ip').focus();
   return false;
  }else if(!checkIP(static_ip))
  {
   //$("#static_ip_error").css("display","none");
   document.getElementById('static_ip').focus();
   return false;    
  }
   
  if(static_mask=='')
  { 
   //$("#static_mask_error").css("display","block");
   document.getElementById('static_mask').focus();
   return false;  
  }else if(!checkMask(static_mask))
  {
   //$("#static_mask_error").css("display","none"); 
   document.getElementById('static_mask').focus();
   return false;  
  }  
  
  if(static_gw=='')
  { 
   //$("#static_gw_error").css("display","block");
   document.getElementById('static_gw').focus();
   return false;  
  }else if(!checkIP(static_gw))
  {
   //$("#static_gw_error").css("display","none");
   document.getElementById('static_gw').focus();
   return false;    
  } 
 

 if(static_ip == static_mask || static_mask == static_gw || static_mask == static_gw)
 {
  alert('地址輸入錯(cuò)誤!');
  return false; //3個(gè)地址不能相同
 }
 
 var static_ip_arr = new Array;
 var static_mask_arr = new Array;
 var static_gw_arr = new Array;
  
 static_ip_arr = static_ip.split(".");
 static_mask_arr = static_mask.split(".");
 static_gw_arr = static_gw.split(".");

 var res0 = parseInt(lan_ip_arr[0]) & parseInt(static_mask_arr[0]);
 var res1 = parseInt(lan_ip_arr[1]) & parseInt(static_mask_arr[1]);
 var res2 = parseInt(lan_ip_arr[2]) & parseInt(static_mask_arr[2]);
 var res3 = parseInt(lan_ip_arr[3]) & parseInt(static_mask_arr[3]);
 
 var res0_gw = parseInt(static_gw_arr[0]) & parseInt(static_mask_arr[0]);
 var res1_gw = parseInt(static_gw_arr[1]) & parseInt(static_mask_arr[1]);
 var res2_gw = parseInt(static_gw_arr[2]) & parseInt(static_mask_arr[2]);
 var res3_gw = parseInt(static_gw_arr[3]) & parseInt(static_mask_arr[3]);
 
 if(res0==res0_gw && res1==res1_gw && res2==res2_gw && res3==res3_gw)
 {
  
 }else{
  alert('IP地址與子網(wǎng)掩碼、網(wǎng)關(guān)地址不匹配!');
  return false;
 }

js驗(yàn)證IP及子網(wǎng)掩碼的合法性代碼分享:

function checkIP(ip) 
{ 
  obj=ip;
  var exp=/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/; 
  var reg = obj.match(exp); 
  if(reg==null) 
  { 
    return false;//不合法
  } 
  else 
  { 
    return true; //合法
  } 
}
 
function checkMask(mask) 
{ 
  obj=mask; 
  var exp=/^(254|252|248|240|224|192|128|0)\.0\.0\.0|255\.(254|252|248|240|224|192|128|0)\.0\.0|255\.255\.(254|252|248|240|224|192|128|0)\.0|255\.255\.255\.(254|252|248|240|224|192|128|0)$/; 
  var reg = obj.match(exp); 
  if(reg==null) 
  { 
     return false; //"非法"
  } 
   else 
  { 
     return true; //"合法"
  } 
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助。

相關(guān)文章

  • JavaScript下利用fso判斷文件是否存在的代碼

    JavaScript下利用fso判斷文件是否存在的代碼

    JavaScript下利用fso判斷文件是否存在的代碼,需要的朋友可以參考下,這個(gè)一般需要運(yùn)行確認(rèn)的。
    2010-12-12
  • Popup彈出框添加數(shù)據(jù)實(shí)現(xiàn)方法

    Popup彈出框添加數(shù)據(jù)實(shí)現(xiàn)方法

    這篇文章主要為大家詳細(xì)介紹了Popup彈出框添加數(shù)據(jù)的簡(jiǎn)單實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • 無阻塞加載腳本分析[全]

    無阻塞加載腳本分析[全]

    script標(biāo)簽的阻塞行為會(huì)對(duì)頁面性能產(chǎn)生負(fù)面影響,大多數(shù)瀏覽器在下載或執(zhí)行腳本的同時(shí),會(huì)阻塞下載位于它之后的資源,也會(huì)阻塞渲染位于它之后的元素。
    2011-01-01
  • requirejs按需加載angularjs文件實(shí)例

    requirejs按需加載angularjs文件實(shí)例

    本篇文章主要介紹了requirejs按需加載angularjs文件實(shí)例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-06-06
  • JavaScript中的冒泡排序法

    JavaScript中的冒泡排序法

    這篇文章主要介紹了JavaScript中的冒泡排序法的知識(shí),并通過一個(gè)例子給大家講解了js冒泡排序,非常不錯(cuò),具有參考借鑒價(jià)值,感興趣的朋友一起學(xué)習(xí)吧
    2016-08-08
  • 淺談javascript中的事件冒泡和事件捕獲

    淺談javascript中的事件冒泡和事件捕獲

    本文主要介紹了javascript中的事件冒泡和事件捕獲,具有一定的參考價(jià)值,下面跟著小編一起來看下吧
    2016-12-12
  • 用js控制電燈開關(guān)

    用js控制電燈開關(guān)

    這篇文章主要為大家詳細(xì)介紹了用js控制電燈開關(guān),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • 在Chrome DevTools中調(diào)試JavaScript的實(shí)現(xiàn)

    在Chrome DevTools中調(diào)試JavaScript的實(shí)現(xiàn)

    這篇文章主要介紹了在Chrome DevTools中調(diào)試JavaScript的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • 微信小程序?qū)崿F(xiàn)星星評(píng)分效果

    微信小程序?qū)崿F(xiàn)星星評(píng)分效果

    這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)星星評(píng)分效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 詳解怎么檢測(cè)和防止JavaScript死循環(huán)

    詳解怎么檢測(cè)和防止JavaScript死循環(huán)

    最近工作中遇到了一些死循環(huán)導(dǎo)致的頁面卡死問題,經(jīng)過 trouble shooting 和代碼修復(fù)解決了問題,所以下面這篇文章主要給大家介紹了怎么檢測(cè)和防止JavaScript死循環(huán)的相關(guān)資料,需要的朋友可以參考下
    2021-11-11

最新評(píng)論