当前位置: 首页 > 面试题库 >

为什么NaN(“”)(带空格的字符串)等于false?

马魁
2023-03-14
问题内容

在JavaScript中,为什么要isNaN(" ")评估为false,但要isNaN(" x")评估为true

我在一个文本输入字段进行数字运算,和我正在检查该字段为null""NaN。当有人在该字段中输入几个空格时,我的验证在这三个字段上均失败,并且我对为什么它无法通过isNaN检查感到困惑。


问题答案:

JavaScript将一个空字符串解释为0,然后失败了isNAN测试。您可以先在字符串上使用parseInt,它不会将空字符串转换为0。然后结果应为isNAN。



 类似资料:
  • 问题内容: 我有以下代码: 旨在将物料价格初始化为0,然后获取有关其的信息。如果价格被告知为“ e”,则表示交换而不是卖出,其作为负数存储在数据库中。 也有可能将价格保留为0,这是因为该项目是奖励商品,或者是因为价格将在以后设置。 但是,每当未设置价格时,其初始值将为0,则上述循环将评估为true,并将价格设置为-1。也就是说,它认为0等于“ e”。 如何解释呢? 当价格提供为0(初始化后)时,该

  • 问题内容: 我注意到,在相同的字符串中添加空格会使它们使用比较不相等,而非空格版本则比较相等。 我已经阅读了有关将字符串与和进行比较的问题。我认为这是一个不同的问题,因为空格字符正在改变行为,而不是字符串的长度。看到: 为什么在字符串中添加空格会更改此比较的结果? 问题答案: python解释器根据某些条件缓存一些字符串,第一个字符串被缓存并用于两者,而第二个则不。从in到int的小整数也是一样。

  • 问题内容: 我试图理解字符串比较与字符串比较的输出。需要明确的是,我拥有使用==和equals比较两个字符串的类。我试图将==和equals()的输出合并为字符串。equals()的输出会连续显示,但==的输出不会 连续显示。使用Java的装箱功能,将与字符串连接的布尔值联系起来。equals和==都返回布尔值。那么为什么会有这种差异呢?有人可以解释吗? 输出 更新:答案 如果不使用s1 == s

  • 我有一个数据框,如下所示: 我想用一个空字符串删除NaN值,这样看起来像这样:

  • 问题内容: 显然,它不是根据长度来比较它们,而是通过编码来比较它们。但是,我不知道它是如何工作的。我需要一些解释:-) 问题答案: 字符串按字典顺序进行比较。即逐个字符,直到它们不相等或没有要比较的字符为止。“11”的首字符小于“ 3”的首字符。 如果我们使用字母,则因为不小于,不小于,但是由于小于,小于。 您可以将字符串显式转换为数字:

  • 我有一个包含以下条目的Java配置文件 这是一个编入工作了6年的罐子的资源。突然之间,这种比较似乎并不等同于布尔真。 我已经检查了Windows行尾和空格。这是Bash5.0.17,它相当新。它在Solaris上运行。似乎足够简单,我们不想编辑脚本,如果可能的话。还有什么其他的解释呢?