是否可以有一个字符串,比如$10.50
在 javascript 中对其进行数学运算?我在这个网站上找不到答案。
HTML:
<p id="cost">$10.50</p>
---
<div id="output"></div>
JavaScript:
$('#output').html($('#cost').html() / 2);
输出:
NaN
是否可以有一个字符串,比如$10.50
在 javascript 中对其进行数学运算?我在这个网站上找不到答案。
HTML:
<p id="cost">$10.50</p>
---
<div id="output"></div>
JavaScript:
$('#output').html($('#cost').html() / 2);
输出:
NaN
如果您使用去掉美元符号,您可以对其进行数学计算;由于它通常位于第一个位置,因此您可以简单地.substring(1)
在字符串值上使用。
$('#output').html($('#cost').html().substring(1) / 2);
你可以这样做:
<p id="cost" data-value="1050" data-currency="$">$10.50</p>
---
<div id="output"></div>
var el = $("#cost");
$('#output').html( el.data("currency") + (el.data("value") / 2 / 100));
</p>
不,但为什么不将'$'分开:
<p>$<span id="cost">10.50</span></p>
或者你必须解析字符串并去掉'$"
不,你不能对字符串进行数学运算。如果你这样做,JavaScript 将尝试隐式类型转换,但对于不以数字开头的字符串,它会失败 - 导致NaN
.
首先,去掉美元符号(例如 by .slice(1)
),然后用于parseFloat
获取数字。现在进行除法,然后.toFixed(2)
用于将其转换回字符串以输出。更新小提琴:http: //jsfiddle.net/QkCyM/7/。
并且不要忘记每个程序员都应该知道的关于浮点运算的知识。