js IP效验,IP+掩码计算网络地址、广播地址、可用地址范围
- IP效验
let iputils = {
};
iputils.checkIp = function(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 = ip.match(exp);
return reg != null;
};
- 根据掩码获取掩码地址
iputils.getSubnetMask = function(mask) {
var result='';
var sum = 32;
var m = Number(mask);
sum = sum-m;
var str = "";
for(var i=0;i<m;i++) {
str = str+"1";
}
for(var j=0;j<sum;j++) {
str = str+"0";
}
var arr = ['','','',''];
for(var l=0;l<arr.length;l++) {
arr[l]=str.substring(l*8,(l+1)*8);
if(""==result)
result = result+iputils.add(arr[l]);
else result = result+"."+iputils.add(arr[l]);
}
return result;
}
iputils.add = function(s) {
var str='';
var count=0;
var temp = s.toString