【问题标题】:Concatenates instead of Addition in Javascript [duplicate]在Javascript中连接而不是加法[重复]
【发布时间】:2015-12-17 13:07:18
【问题描述】:
var tt = gas+0.1
document.write (vartt);

复制

【问题讨论】:

标签: javascript html arithmetic-expressions


【解决方案1】:

你也可以使用 Number 函数。

var tt = Number(gas) + 0.1;
document.write(tt);

【讨论】:

    【解决方案2】:

    用户输入了一个字符串。如果你想用它而不是字符串连接来做算术,你必须转换为一个数字。有很多不同的方法可以做到这一点,包括parseInt(gas, 10)parseFloat(gas)Number(gas)+gas

    这是一个实现:

    var tt = parseFloat(gas) + 0.1; 
    document.write(tt);
    

    另外,您的document.write() 声明也不正确。变量名只是tt,而不是vartt

    【讨论】:

      【解决方案3】:

      除非您使用<input type="number" /> 作为输入,否则用户提供的数据将是一个字符串。默认情况下,当您尝试添加一个字符串 + 一个数字时,它会将该数字转换为一个字符串。您可以按照 Видул Петров 的建议进行操作,并将一元 + 添加到 gas 以强制将其强制转换为数字,但是如果它仍然是无法转换为数字的字符串(例如有人输入单词“五” ' vs '5'),除非您对传入的数据有适当的控制,否则您将得到NaN

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-09
        • 2017-12-06
        • 2015-06-25
        • 2021-06-25
        • 2017-01-01
        相关资源
        最近更新 更多