变量和数学运算符

Variables and math operators

本文关键字:运算符 变量      更新时间:2023-09-26

可能重复:
奇怪的javascript添加问题

我知道这显然有一个解决方案,我以前也做过,但我记不清了,现在我找不到了

​<div>1</div>​​​​​​​​
$(function() {
    var number = $('div').text();
    var math = number + 2;
    $('body').text(math);
});​

http://jsfiddle.net/G5zdx/

number未被视为整数,因此math的值为"12"而不是"3"。我该如何更正?

有很多方法,但是

var math = (1 * number) + 2;

是一个简单的问题。是否应该检测可能的格式错误的非数字取决于代码其余部分的性质。

parseInt()函数很有用,但它可能应该以10作为第二个参数来调用,以避免将以零开头的数字解释为八进制常数而不是十进制。此外,parseInt()不会将类似"23skidoo"的字符串视为错误,这在您的应用程序中可能正常,也可能不正常。

​<div>1</div>​​​​​​​​
$(function(){
  var number = parseInt($('div').text(), 10);
  var math = number+2;
  $('body').text(math);
});​

您可以使用parseInt(string[, radix])将字符串解析为int。

你的代码看起来如下

$(function(){
  var number = $('div').text();
  var math = parseInt(number, 10)+2;
  $('body').text(math);
});

来源:http://www.javascripter.net/faq/convert2.htm