a=0,那么if条件就是false了
布尔值,javascript中以下值会被转换为false
false
undefined
null
0
-0
NaN
""
''
在javascript中,以下值均能作为if的条件1、布尔变量true/false
2、数字非0,非NaN/ (0 或NaN)
3、对象非null/(null或undefined)
4、字符串非空串(“”)/空串("")
你的每一行alert语句是不是结尾忘写分号 了 ?
……以下是我解决问题的看法:
“且四项的值不能使汉字,有一项是汉字都不行",过滤汉字就先封装一个方法,用 Unicode 字符范围判断或正则表达式 :
//检测是否为中文,true表示是中文,false表示非中文
function isChinese(str){
if(/^[\u3220-\uFA29]+$/.test(str)){
return true
}else{
return false
}
}
”只要一项有错误,就不执行加法操作“,用if{} else{} if 进行流程控制,if中对条件进行判断,如果前几项有一个不成立 ,则会跳到最后的else,如下
if(Number(one<0 || Number(one)>20 )||isChinese(one)){alert("第一项分值错误")
}else
if (Number(two<0 || Number(two)>25 )||isChinese(two)){
alert("第二项分值错误")
}else
if (Number(three<0 || Number(three)>25) ||isChinese(three)){
alert("第三项分值错误")
}else
if (Number(four<0 || Number(four)>25) ||isChinese(four)){
alert("第四项分值错误")
}
else{
var he = Num(one)+Number(two)+Number(three)+Number(four)
eg.$("he").value=he
}
我很少写JS 欢迎指正,希望帮到你