1

たとえば、0-91と0-93を比較したいと思います。使用しているロジックでは、0-93は0-91よりも大きいです。これは、0-の後の数字(91)のみを表示しているためです。および93。基本的に、数値の範囲をチェックするフォームを作成していますが、フォームでは、たとえば91と93のように数値を入力できますが、通常は0-91と0-93のように入力します。どうすればよいですか? 2つの数値を比較するときに0-が無視されるようにjavascriptロジックを記述しますか?

基本的に0-91と0-93を整数91と93に変換し、それらを比較します。

4

2 に答える 2

1

それを行う1つの方法は次のようになります:

var a = '0-91',
    b = '0-93',
    max = Math.max(a.slice(2), b.slice(2)), // for example
    max2 = Math.max(a.substr(-2), b.substr(-2)); // will work if a = "91" and b = "93"

お役に立てれば

于 2013-01-31T19:31:28.783 に答える
0

サポートが必要な場合:

  • 範囲または範囲なし(「0-93」または「93」)
  • 多かれ少なかれ数字(「0-999」または「9」)

これはそれを解決する1つの方法です:

function numberFromInput(value) {
  return Number(value.match(/[-]?(\d*)$/).pop());
}

Math.max(numberFromInput("91"), numberFromInput("0-93"));
于 2013-01-31T20:05:19.210 に答える