【问题标题】:Why am I getting a concatenated value in this loop为什么我在这个循环中得到一个连接值
【发布时间】:2015-11-23 14:39:56
【问题描述】:

我正在此链接中制作 UI pluker link 对函数使用以下代码:

function span1(left1, width, id, color11) {

    if (id == 1) {
        var sum = 0;
        if (sum < width)
            sum = width;

        width5 = left1 + sum;
        console.log(width);
    } else if (id == 2) {
        var sum2 = 0;
        left1 = width5;
        if (sum2 < width)
            sum2 = width;

        width1 = left1 + sum2;
    } else if (id == 3) {
        var sum1 = 0;
        if (sum1 < width)
            sum1 = width;
        left1 = width1;
        width2 = sum1 + left1;

    } else if (id == 4) {
        left1 = width2;
        width3 = left1 + width;
    } else {
        left1 = width3;
    }

当 id 从 1 变为 2 时,它给我的 left1 值为 6620,这是 left1=66 和 width=20 的串联。请你帮助我好吗?提前致谢。

【问题讨论】:

  • 你只需要使用 parseFloat(string) 或 parseInt(string)
  • 你能告诉我具体应该在哪里做吗

标签: javascript jquery


【解决方案1】:

您只需要使用parseFloat()parseInt()

function span1(left1, width, id, color11) {
   left1 = parseInt(left1 , 10);
   width = parseInt(width , 10);
   // So on ....

或者您可以根据需要使用 parseFloat() .. 您可以阅读 Behavior difference between parseInt() and parseFloat()

【讨论】:

  • @deepak 很高兴听到这个消息......祝你好运:)
  • 您应该小心始终将这两个参数与 parseInt 一起使用,因此在这种情况下,您可能需要parseInt(left1,10)。如果不这样做,如果传递的值应该以零开头,您将得到错误的值。
  • @deepak 更新了答案,10 请阅读 Chris 评论和我在答案中引用的 url .. 最后 .. 不要忘记接受我的答案 :)
  • @Mohamed-Yousef:你能告诉我为什么这里使用 10
  • @deepak 点击我在我的答案中发送的链接.. 看看最后一个答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-04-04
  • 2021-04-11
  • 1970-01-01
  • 2014-09-11
  • 2021-06-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多