【问题标题】:adding a number to a numerical string with jquery使用jquery将数字添加到数字字符串
【发布时间】:2012-01-30 09:25:52
【问题描述】:

我有一个计数器,我正在尝试使用 jquery 检索该数字并将其添加到其中。

<div id='counter'>
32
</div>

所以我尝试使用 jquery 获取 32,然后添加到它,+1。

var counter = $('#counter').text();
var counterPlus = counter++;

这应该有效吗?这对我不起作用

【问题讨论】:

    标签: jquery text add counter increment


    【解决方案1】:

    计数器的类型是字符串,不是数字,所以需要先转换成数字:

    var counterPlus = parseInt(counter, 10) + 1;
    

    如果你想重新设置:

    $('#counter').text(parseInt($('#counter').text(), 10) + 1);
    

    【讨论】:

    • @andrewliu 它指定要使用的基数。这可以防止输入包含前导零时出现意外行为。 RTFD,正如他们所说:developer.mozilla.org/en/JavaScript/Reference/Global_Objects/…
    • 不必要的。 counter++ 表达式工作得很好。问题是 OP 期望返回增加的值,这是由 ++counter 实现的。
    【解决方案2】:

    counter++ 和 ++counter 之间有一个基本的区别。

    counter++ -> 赋值和递增

    ++counter -> 递增和赋值

    检查此jsFiddle 代码以获取证据

    【讨论】:

      【解决方案3】:
      var counter = parseInt(jQuery("#counter").text(), 10);
      var counterPlus = counter++;
      

      【讨论】:

      • 转换不是问题。它是关于 counter++ 和 ++counter 的。见我的 jsFiddle jsfiddle.net/skram/me3Yu
      • counterPlus = counter++; //counterPlus = 32 counter = 33
        counterPlus = ++counter; //counterPlus = 33 counter = 33 counterPlus = counter+1; //counterPlus = 33 计数器 = 32
      猜你喜欢
      • 2013-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-16
      • 2012-12-15
      • 2011-10-19
      • 1970-01-01
      相关资源
      最近更新 更多