今天遇到一个重数据库封装好的boolean 类型的字符串
var star = 'data[1]==110 || data[1]==120 || data[1] = 119';
if(star){
alert('成功进入');
}else{
alert('进入失败!');
}
在每次调试的时候,都提示“成功进入”,在网上sou啦一下,才发现,js也有弱类型
当遇到字符串的时候,总是返回 true
没有办法,必须进行字符串解析,重新写方法:如下进行解决
function isStarMobile(datass){
var isStar = false;
var tempStartMobile = document.getElementById("starMobile").value;
if(null == tempStartMobile || tempStartMobile == ""){
alert('手机类型为空');
return false;
}
var star =tempStartMobile.split('@');
for(var k=0;k<star.length;k++){
if(null != star[k] && star[k] == datass){
isStar = true;
alert(' 直接返回true ');
return true;
}else{
alert('not star ');
isStar = false;
}
}
return isStar;
}