【问题标题】:how does append(a +=", ") work in javascript? [duplicate]append(a +=", ") 如何在 JavaScript 中工作? [复制]
【发布时间】:2018-02-22 01:54:32
【问题描述】:

我正在编写一些 javascript 代码,而不是编写 $("p").append(a +", ");,而是将其输入错误为 $("p").append(a +=", ");

在我运行脚本后,结果非常奇特。我创建了这个Fiddle。单击按钮 3,4 次,结果将是这样的:0, 0, , 0, , , 0, , , ,

由于我是 javascript 的初学者,我可能不知道导致这种行为的某些语法。我也无法在任何地方找到对类似问题的任何引用。我想了解这是怎么回事。

【问题讨论】:

  • @fvu 我认为混淆是由于当我们编写(a+",") 时,它实际上打印了a, 连接的值。感谢您指出这一点:)

标签: javascript jquery


【解决方案1】:

对于每次点击,a 的值都会发生变化。

", " 会在每次单击按钮时添加。由于您仅在开始时将a 设置为0,因此它会不断变长。

这是因为+=造成的。

a += ", " 相当于写a = a + ", "

【讨论】:

    【解决方案2】:

    a += ", "a = a + ", " 相同。因此,每次单击它时,都会将 a 修改为在其末尾添加另一个“,”。

    【讨论】:

      【解决方案3】:

      a += ", "a = a + ", " 相同

      基本上正在发生的事情是这样的。你从数字 0 开始。当你第一次按下按钮时,0 变成字符串“0”,当你第二次按下它时,你说“到字符串 0,添加连接字符串的结果0, and , 给我们一个字符串 0,0,, ("0," + ("0," +",")),每次点击按钮,重复操作

      【讨论】:

        【解决方案4】:

        每次点击按钮时,都会在变量 a 中添加一个逗号和一个空格。

        += 是 a = a + ', ' 的简写

        【讨论】:

          【解决方案5】:

          您的错误输入相当于

          a = a + ", ";
          $("p").append(a);
          

          那是你反复将", " 连接到a

          【讨论】:

            猜你喜欢
            • 2014-05-30
            • 1970-01-01
            • 2015-09-08
            • 2013-09-26
            • 2015-02-09
            • 1970-01-01
            • 2013-08-06
            • 2011-08-09
            相关资源
            最近更新 更多