Javascript jQuery不需要的求和结果

Javascript jQuery不需要的求和结果,javascript,jquery,Javascript,Jquery,我有一个默认设置为0的表头: <th id="total_price" style="text-align:center">0</th> 我试过这个: var initial = $("#total_price").text(); console.log(initial); var newPrice = initial + +(res['price']); console.log(newPrice);

我有一个默认设置为
0
的表头

<th id="total_price" style="text-align:center">0</th>
我试过这个:

        var initial = $("#total_price").text();
        console.log(initial);
        var newPrice = initial + +(res['price']);
        console.log(newPrice);
        $("#total_price").text(newPrice);
但还是一样


您需要将文本(字符串)解析为一个整数,然后将其相加。因此,请执行下面的计算

 var newPrice = parseInt(initial,10) + parseInt(res['price'],10);
或者
您尝试的是字符串串联,而不是求和


您可以得到

您需要将文本(字符串)解析为整数,然后将其相加。因此,请执行下面的计算

 var newPrice = parseInt(initial,10) + parseInt(res['price'],10);
或者
您尝试的是字符串串联,而不是求和


您可以得到

,正如我已经说过的,当您从DOM元素中读取文本时,它被读取为字符串,当您对其应用
+
操作符时,它被视为连接和添加

以下是一个模拟:

(函数(){
var th=$(“th”);
var结果=”;
结果+=“直接加法:”++$(th[0]).text()++$(th[1]).text()++“
”; 结果+=“类型:”+typeof($(th[0]).text())+“
”; 结果+=“Parse Int:”+(parseInt($(th[0]).text())+parseInt($(th[1]).text())+“
”; $(“#结果”).html(结果); })()

20000
0

正如我已经评论过的,当您从DOM元素中读取文本时,它被读取为字符串,当您对其应用
+
运算符时,它被视为连接和添加

以下是一个模拟:

(函数(){
var th=$(“th”);
var结果=”;
结果+=“直接加法:”++$(th[0]).text()++$(th[1]).text()++“
”; 结果+=“类型:”+typeof($(th[0]).text())+“
”; 结果+=“Parse Int:”+(parseInt($(th[0]).text())+parseInt($(th[1]).text())+“
”; $(“#结果”).html(结果); })()

20000
0

您必须使用
parseInt()
+
运算符用于字符串的添加和串联。另外,当您读取DOM元素的文本时,它被读取为字符串而不是数字。您有一个正确的解决方案,但忘记将
+
放在
首字母的后面,因为这也是一个字符串<代码>+首字母++(res['price'])res['price']的操作。替换(/[,]/g',)
谢谢大家。我很感激。现在它正在使用@squint的注释给出的解决方案和reddy的答案,您必须使用
parseInt()
+
运算符用于字符串的添加和串联。另外,当您读取DOM元素的文本时,它被读取为字符串而不是数字。您有一个正确的解决方案,但忘记将
+
放在
首字母的后面,因为这也是一个字符串<代码>+首字母++(res['price'])res['price']的操作。替换(/[,]/g',)
谢谢大家。我很感激。现在它正在使用@squint的评论给出的解决方案和Reddy的回答