$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
。
まず、ドル記号を削除し(たとえば、によって.slice(1)
)、次にを使用parseFloat
して数値を取得します。次に除算を行い、それを使用.toFixed(2)
して文字列に変換して出力します。更新されたフィドル:http://jsfiddle.net/QkCyM/7/。
そして、すべてのプログラマーが浮動小数点演算について知っておくべきことを忘れないでください。