Javascript 如何将值添加为数字

Javascript 如何将值添加为数字,javascript,Javascript,我有问题,因为它的代码不计算值 我写了11,是支出:11,接下来我写了11,是1111,但我需要22,所以我使用了minusValue.value+=a 你知道错误在哪里吗 var minusCashField=document.getElementById('minusCashField'); minusCash.addEventListener(“单击”,函数(){ var a=minusCashField.value; minusValue.value+=a; }); 支出: 提交 输

我有问题,因为它的代码不计算值

我写了11,是支出:11,接下来我写了11,是1111,但我需要22,所以我使用了minusValue.value+=a

你知道错误在哪里吗

var minusCashField=document.getElementById('minusCashField');
minusCash.addEventListener(“单击”,函数(){
var a=minusCashField.value;
minusValue.value+=a;
});

支出:
提交
输入。值
返回的是字符串,而不是数字

您可以使用一个字符串将字符串转换为一个数字


您需要将包含2个字符串的字符串转换为整数

var minusCashField = document.getElementById('minusCashField');
minusCash.addEventListener("click", function() {

var a = parseInt(minusCashField.value || 0, 10);
minusValue.value = parseInt(minusValue.value || 0, 10) + a;
});

因为这些输入的值将是字符串,所以在执行任何数学运算之前,您需要将字符串转换为数字-既包括分配给
a
的字符串值,也包括添加到
a
的结果中包含的值

minusCash.addEventListener("click", function() {
  var a = Number(minusCashField.value);
  minusValue.value = Number(minusValue.value) + a;
});
使用parseInt()将字符串转换为整数

var minusCashField=document.getElementById('minusCashField');
minusCash.addEventListener(“单击”,函数(){
var a=parseInt(minusCashField.value | | 0,10);
minusValue.value=parseInt(minusValue.value | | 0,10)+a;
});

支出:
提交
现在我在字段中看到NAN首先检查是否有值,我刚刚添加了一个或检查,您能告诉我| | 0,10)这段代码是什么意思吗?我不明白?你应该添加其他检查,确保输入都是数字,然后将其转换为integerminusCashField。value将返回一个空字符串“”,在javascript中为falsy,因此添加
|
将生成一个表达式,表示如果左侧的值为falsy,则将值返回右侧。
minusCash.addEventListener("click", function() {
  var a = Number(minusCashField.value);
  minusValue.value = Number(minusValue.value) + a;
});