我正在构建一个计算器来测试我的Vue JS技能。我有基本工作或至少设置,但是如果我输入多个数字(例如34
),我就无法读取所有数字(例如34
)作为整体价值;相反,它增加了3和4。我遇到问题的片段在这里:
press: function(num) {
if(this.currentNum == 0)
{
this.currentNum = num;
this.output = num.toString();
}
else {
this.output += num.toString();
this.currentNum = this.output.parseInt();
}
},
以下是CodePen上关于更好背景的全部内容 - https://codepen.io/ajm90UK/pen/BZgZvV
我认为这更像是一个JS问题,而不是Vue特有的东西,但即使是字符串上的parseInt(),我也没有运气。关于如何阅读显示器(输出)的任何建议都将不胜感激,我已经在这几个小时了!
答案 0 :(得分:0)
parseInt()不是String prototype的方法,而是内置函数。
更新此行:
this.currentNum = this.output.parseInt();
到此:
this.currentNum = parseInt(this.output);
最好在第二个参数中指定基数 - 对于十进制数,在大多数情况下可能为10:
this.currentNum = parseInt(this.output, 10);
这样,如果输入类似022
的值,则不会将其解释为八进制值(即,十进制数18
)。