【问题标题】:javascript how to set null input equal to 0javascript如何设置null输入等于0
【发布时间】:2017-04-15 17:41:27
【问题描述】:

我有一个 javascript 函数,可以计算表中“TOTAL”行和“Balance”列的值。但如果没有输入,javascript 将返回 NaN,这不是数字错误。 如何设置如果文本框中没有输入,javascript会将其解释为0,这样我就不会出现NaN错误。

如您所见,pay(notes 50) 列的文本框是空的。然后 balance 和 total 的值变成 NaN。

【问题讨论】:

  • 我猜您可能在某处使用parseInt 或等效项。只需添加一个if 语句来检查字符串是否等于""(空字符串)
  • 您可以使用isNan() 函数来检查它,或者您应该使用parseInt() 将输入转换为整数。
  • 或更改为parseInt(value || 0) 之类的内容,如果值不是数字,则默认为0。
  • @nicovank,我在声明变量时尝试了 parseInt(value || 0) 并设法将值解析为 int 并在 null 时设置为 0。非常感谢。

标签: javascript function nan


【解决方案1】:

将该对象分配给它,这将正常工作

you_object = you_object == null ? "0" : you_object;

【讨论】:

    【解决方案2】:

    三元运算符可以正常工作

    yourVar = (isNaN(yourVar)) ? 0 : yourVar
    

    所以如果你想检查你的文本框值是否为空,你可以使用:

    val = your_textbox_value == '' ? 0 : your_textbox_value
    

    【讨论】:

      【解决方案3】:

      使用isNaN(),放在if语句中,如果为真,设置变量为0

      if(isNaN(yourVar)) {
          yourVar = 0;
      }
      

      【讨论】:

        【解决方案4】:

        只需使用逻辑“或”运算符(参见short-circuit evaluation),

        parseInt('10') || 0; // give 10
        parseInt('') || 0; // give 0
        

        【讨论】:

          【解决方案5】:

          您可以通过isNaN()函数检查该值是否为数字,然后进行求和。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2013-05-15
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-04-27
            • 2023-03-29
            • 2019-07-13
            相关资源
            最近更新 更多