いくつかの浮動小数点値を処理するJavaScriptコードを書いているときに、ある考えが浮かびました。JavaScriptの小数点記号は何ですか?いつも.
ですか?それとも文化固有ですか?そして、どう.toFixed()
ですか.parseFloat()
?ユーザー入力を処理している場合、ローカルのカルチャ固有の小数点記号が含まれている可能性があります。
最終的には、ユーザー入力の両方の小数点(カルチャ固有と)をサポートするコードを記述したいのですが.
、JavaScriptが何を期待するかわからない場合、そのようなコードを記述できません。
追加: OK、ルーベンス・ファリアスは、きちんと受け入れられた答えを持っている同様の質問を見ることを提案します:
function whatDecimalSeparator() {
var n = 1.1;
n = n.toLocaleString().substring(1, 2);
return n;
}
それは素晴らしいです、それは私がロケールの小数点を取得することを可能にします。間違いなく、解決に向けた一歩。
さて、残りの部分は、の振る舞いが何であるかを決定すること.parseFloat()
です。いくつかの回答は、浮動小数点リテラルに対してのみ.
有効であると指摘しています。.parseFloat()
同じように動作しますか?または、一部のブラウザでローカル小数点区切り文字が必要になる場合がありますか?浮動小数点数を解析するためのさまざまな方法もありますか?念のために自分で展開する必要がありますか?