2017-05-06 40 views
0

當我在if語句中使用or時,它假裝沒有|||| (或)在if中的if語句不起作用

例子:

if (code !== "" || null) { 
    document.getElementById("person_name").innerHTML = "Welcome " + name + "!"; 
} else { 
    document.getElementById("person_name").innerHTML = "I'm sorry, but you didn't enter your name."; 
} 

我使用JavaScript中的window.prompt提醒任何人把他們的名字在框中,它應該輸出。如果某人只是在沒有在箱子裏放入任何物品的情況下按下輸入鍵,就應該說:「我很抱歉,但是你沒有輸入你的名字。」如果有人退出提示框,它應該說同樣的事情。

+0

你能提供一個例子:期望輸出與實際輸出? –

+0

'||'是一個運算符。這裏,它的兩個操作數是'code!==「」'和'null'。不像英文那樣工作。 – Ryan

回答

1

!=運算符的優先級高於||,因此您的語句讀作「if(代碼不等於空字符串)或null」,null總是計算爲false。

你更想要的是:

if (code !== "" && code !== null) {...