我正在測試一行代碼,它檢查一個變量是否爲空。如果它空出一個提示彈出。但即使變量有些東西,提示仍然彈出。javascript - 爲什麼這個if語句不起作用?
function myFunction(){
if (site == null || variable == undefined) {
var site = prompt("Please enter a valid url:", "http://");
document.cookie = 'Your bookmark is: '+ site;
alert(unescape(document.cookie));
\t document.getElementById("p1").innerHTML = '<a class="txt2" href="' + site + '" target="myframe">' + site + '</a>';
}
else {
alert('yey its working');
}
}
<a class="txt2" id="p1" onclick="myFunction()">Button</a>
代碼工作,它只是之後變量被設置在加載頁面之前提示再次彈出。
你的'if'正在測試兩個不同的變量。變量在哪裏申報?無論如何,'site'在函數內部是本地聲明的,所以在'if'條件被評估的地方它將是'undefined','=='認爲'undefined'和'null'相等,所以'if情況總是如此。 – nnnnnn