The*_*ner 2 javascript parsing if-statement
我什至设置了一个 onclick 来获取输入的值,如果该值是数字,则发出警报。如果输入的值为空,我试图提醒它说“没有数字”,但是,似乎即使我的输入为空,该函数也会返回一条语句,说明“空”值确实是一个数字。
我已经设置了变量来立即解析输入的值,但这就是为什么我的代码总是返回“是一个数字”的原因,因为它在收集变量时自动设置为 1?
代码:
HTML:
<input type="text" id="numberTest" />
<button id="button">Click Me</button>
Run Code Online (Sandbox Code Playgroud)
JS:
var button = document.getElementById("button");
button.onclick = function()
{
var numberTest = parseInt(document.getElementById("numberTest").value);
if(numberTest == NaN || "" || null)
{
alert("No Number");
}
else
{
alert("This is a number!");
}
};
Run Code Online (Sandbox Code Playgroud)
检查是否== NaN将始终返回false。这样做的正确方法是Number.isNaN():
var button = document.getElementById("button");
button.onclick = function() {
var numberTest = parseInt(document.getElementById("numberTest").value);
if (Number.isNaN(numberTest) || numberTest == "" || numberTest === null) {
alert("No Number");
}
else {
alert("This is a number!");
}
};
Run Code Online (Sandbox Code Playgroud)
您的逻辑也有一些问题if- 每个子句都是一个单独的表达式,因此numberTest每次都需要检查。
| 归档时间: |
|
| 查看次数: |
4165 次 |
| 最近记录: |