1

$10.50javascript内で文字列のような文字列を作成して数学を実行することは可能ですか?このサイトで答えが見つかりません。

JSFIDDLE

HTML:

<p id="cost">$10.50</p>
---
<div id="output"></div>

JavaScript:

$('#output').html($('#cost').html() / 2);​

出力:

NaN
4

4 に答える 4

1

を使用してドル記号を取り除くと数学を行うことができます。.substring(1)通常は最初の位置にあるため、文字列値で使用できます。

$('#output').html($('#cost').html().substring(1) / 2);​
于 2012-12-11T00:36:23.423 に答える
0

あなたはこのようなことをすることができます:

<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));​

http://jsfiddle.net/QkCyM/5/

</ p>

于 2012-12-11T00:39:45.347 に答える
0

いいえ。ただし、「$」を分離しておくのはなぜですか。

<p>$<span id="cost">10.50</span></p>

または、文字列を解析して「$」を削除する必要があります

于 2012-12-11T00:40:19.403 に答える
0

いいえ。文字列に対して数学を行うことはできません。これを行うと、JavaScriptは暗黙的な型変換を試みますが、数字で始まらない文字列では失敗し、結果としてNaN

まず、ドル記号を削除し(たとえば、によって.slice(1))、次にを使用parseFloatして数値を取得します。次に除算を行い、それを使用.toFixed(2)して文字列に変換して出力します。更新されたフィドル:http://jsfiddle.net/QkCyM/7/

そして、すべてのプログラマーが浮動小数点演算について知っておくべきことを忘れないでください。

于 2012-12-11T00:43:07.390 に答える