我正在尝试使用此代码并且它无法正常工作请求帮助!
以下是代码:
var test = "3";
function printIsNaN(value) {
var bool = document.getElementById("booleanValue");
if (isNaN(value) === true) {
bool.style.color = "green";
bool.innerHTML = "true";
} else if (isNaN(value) === false) {
bool.style.color = "red";
bool.innerHTML = "false";
}
}
printIsNaN(test);
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8">
<title>Stackoverflow Question</title>
<script src="something.js"></script>
</head>
<body>
<!-- START OF THE DOCUMENT -->
<span id="booleanValue"></span>
</body>
</html>
谢谢,如果你能帮忙请!!!!!!!!
答案 0 :(得分:0)
您可以使用ParseInt()将字符串更改为整数
function printIsNaN(value) {
var bool = document.getElementById("booleanValue");
if (isNaN(parseInt(value))) {
console.log("nope");
} else if (!isNaN(parseInt(value))) {
console.log("yep");
}
}
希望这会有所帮助
答案 1 :(得分:0)
在ES6中,Number对象上有一个名为isNaN
的函数,如果它是真NaN
(数字而不是字符串),则测试该值
您可以像这样实现该功能:
if (!Number.isNaN) {
Number.isNaN = function(n) {
return n !== n;
};
}
它依赖于NaN
是唯一不等于自身价值的面孔。
来源:https://github.com/getify/You-Dont-Know-JS/blob/master/types%20%26%20grammar/ch2.md