笔试题:用js实现一个函数,判断输入的IP地址字符串是否为有效的IP地址。(该题与三七互娱笔试题编程题之一一样)
示例一:ac.33.sf.456->false
示例二:11.10.0.194->true
其实这道题考虑仔细了,实现起来不难,因为判断一个参数是否是非数字,可以用isNaN来检测,如果知道了isNaN()方法的使用,那么这题就解决了一半。另外我们都知道IP地址的四个组成部分都是由0-255之间的数字组成的,但是博主做三七互娱的时候特么的居然忘记了,MMP!
代码实现:
function validIpAddr(str){
if(str.length < 7 || str.length > 15 || str == ''){
return false;
}
var parts = str.split('.');
var len = parts.length;
for(var i=0;i<len;i++){
if(isNaN(parts[i])){
return false;
}
if(parts[i] < 0 || parts[i] > 255){
return false;
}
}
return true;
}
console.log(validIpAddr('119.2.0.11'))
console.log(validIpAddr('319.2.0.11'))
console.log(validIpAddr('121.54.7.aa'))
输出结果如下图:
这就是基本的实现了,有更好更全的方法可以评论交流~