javascript 面对问题,我想只打印数字,而不是任何其他字符,如NaN [重复]

qc6wkl3g  于 2023-01-01  发布在  Java
关注(0)|答案(2)|浏览(105)
    • 此问题在此处已有答案**:

How do I test for NaN? [duplicate](2个答案)
2小时前关门了。
当我把字符放在提示符中时,字符被打印出来...

var myNumber = prompt("What is your Number");
var myName = prompt("What is your name");
if (NaN != myNumber) {
  document.write("My Number is " + myNumber + " ");
} else {
  document.write("This Number is NaN ")
}
document.write("& My Name is " + myName);
8xiog9wr

8xiog9wr1#

首先,我将检查实际的myNumber是否为实际数字

if (!myNumber || isNaN(+myNumber)) {
   console.log("This Number is NaN ")
 } else {
   console.log("My Number is " + myNumber + " ");
 }
6yt4nkrj

6yt4nkrj2#

每次用户提交提示时,都必须检查该号码是否是有效号码。
使用while循环也是一个非常好的主意。

let myNumber = parseInt(prompt('Enter a number'));
const myName = prompt('Enter your name');

while (isNaN(myNumber)) {
    myNumber = parseInt(prompt('Please enter a valid number!'));
};

console.log(`myNumber is ${myNumber}`);
console.log(`myName is ${myName}`);

while循环将不断检查提示符中的输入是否可以转换为数字,而不会在parseInt()函数之后生成NaN。
字符串文字只是一种更简单的连接字符串的方法,特别是当谈到使用数字和“+"时。它只是一种更简洁的方法。然而两种方法都是可能的。

相关问题