Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/417.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 提示js typeof的问题_Javascript_Prompt_Typeof - Fatal编程技术网

Javascript 提示js typeof的问题

Javascript 提示js typeof的问题,javascript,prompt,typeof,Javascript,Prompt,Typeof,我对检查提示数据有问题。我需要检查一下,如果提示数据是字符串,段落可以显示数据不是数字。但根据我的代码,当我输入字符串数据时,它会显示奇数或偶数消息,而不是“notnumber”。有什么不对劲吗?非常感谢 因为您的第二个if条件评估为: !("nonsense" % 2 === 0) !(NaN % 2 === 0) !(NaN === 0) !(false) true 因此,对于非数字,它将始终显示奇数。也许您应该在使用数据之前验证数据。此外,val将始终为“string”类型,您

我对检查提示数据有问题。我需要检查一下,如果提示数据是字符串,段落可以显示数据不是数字。但根据我的代码,当我输入字符串数据时,它会显示奇数或偶数消息,而不是“notnumber”。有什么不对劲吗?非常感谢


因为您的第二个if条件评估为:

 !("nonsense" % 2 === 0)
 !(NaN % 2 === 0)
 !(NaN === 0)
 !(false)
 true
因此,对于非数字,它将始终显示奇数。也许您应该在使用数据之前验证数据。此外,
val
将始终为“string”类型,您可能希望正确解析它:

 const num = parseInt(prompt("A number?"), 10);
 if(isNaN(num)) {
   //...
 }
prompt()
始终返回字符串,使用
parseInt(prompt(),10)
将其转换为字符串(10是数字基数,例如:2表示二进制数)

它将返回一个数字或一个
NaN
NotaNnumber)值

typeof(NaN)==“number”

NaN===NaN
将导致false,使用
Number.isNaN
检查变量的值是否为NaN

if(!(a==b))
if(a!==b)



请下次将您的代码作为文本发布,而不是共享打印屏幕,这样我们就可以ctrl+c,ctrl+v it

请将代码作为代码发布,而不是图像发布…非常感谢,Jonas!感谢您的回答!