解释:if语句是在括号里面写判断条件,然后如果判断通过,则执行{}里面的代码。
比如上面的条件就是当a等于b时,执行alert(11)
要知道if里面的返回值是true或是false,那么只要括号里随便一个数都可以,a=0,那么if条件就是false了
布尔值,javascript中以下值会被转换为false
false
undefined
null
0
-0
NaN
""
''
你的每一行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 欢迎指正,希望帮到你