我有一个函数有多个if-else条件(大约50),他们将检查用户的输入。 如果用户的输入匹配,那么它将再次检查是否有任何错误,然后最后显示result。
function abc(input){
try{ //start try
if(input.includes("abc")){
if(....){
throw error "error";
}
}
else if(input.includes("def"){
if((.....){
throw error "error";
}
}
................
............... .
document.getElementById("div").style.background ="green";
} //end try
catch(err){
document.getElementById("div").style.background ="red";
}
问题是当我控制台记录错误时,它会显示错误,但div元素保持绿色。 出现错误时,应显示红色背景。 知道吗?
谢谢
似乎有一些语法错误:
如果(input.includes(“def”)
缺少结束)
throw error“error”
就是throw“error”
(如果定义了error
,则为throw error
)解决这些问题,似乎如下所示:
null
function abc(input) {
try { //start try
if (input.includes("abc")) {
throw "error";
} else if (input.includes("def")) {
throw "error";
}
document.getElementById("div").style.background = "green";
} //end try
catch (err) {
console.log(err)
document.getElementById("div").style.background = "red";
}
}
abc("abc")
<div id="div">Change my BG</div>