-1

例えば ​​:

Var1 = 289.56

私はこの式を使用します:

foundStr = Var1.match("[0-9]+\.[0-9]+");
Price( parseFloat(foundStr).toFixed(2) );

しかしいつVar1 > 999.99(例:2,356.21)

文字列を検索するスクリプトは何ですか?

foundStr = Var1.match(??);

ありがとうございました

4

3 に答える 3

3

すでに数値変数がありますが、なぜ文字列をいじっているのでしょうか?

var number1 = 289.56;

if (number1 > 999.99) {
    // do whatever
}

丸めようとしている場合は、代わりに Math.floor を使用してください。

var number1 = 289.56485345734593453;
var roundedNumber1 = Math.floor(number1 * 10) / 10; // two decimal points
于 2012-07-20T17:45:51.137 に答える
0

カンマを削除してフロートかどうかを確認したいだけだと思いますが、質問に基づいて判断するのは困難です。このようなものはどうですか:

var Var1 = "1,234.567";
var parsed = parseFloat(Var1.replace(",",""), 10);
if (isNaN(parsed)) {
    // its not a valid number, so deal with it as needed
}
else {
    // parsed now holds your Number, so use it
}

このアプローチは、数が1000以上であるかどうかに関係なく機能します。

于 2012-07-20T17:55:53.267 に答える
0
var Var1 = "2,356.21";
foundStr = String(Var1.match(/([0-9]{1,3},)?[0-9]{0,3}\.[0-9]+/g)).replace(/,/g, "");
var result = parseFloat(foundStr).toFixed(2);
于 2012-07-20T18:15:07.817 に答える