0

重複の可能性:
数値が浮動小数点か整数かを確認するにはどうすればよいですか?

変数が整数であることを確認するための賭けの方法は何ですか?

Pythonでは次のことができます。

 if type(x) == int

JSにも同様にエレガントな同等物はありますか?

4

4 に答える 4

2

私はテストしていませんが、私は提案したいと思います:

if (Math.round(x) == x) {
    // it's an integer
}

単純なJSフィドル

于 2012-11-18T23:07:59.630 に答える
0

isNaN(数値ではありませんが、ロジックが否定されることに注意してください)を使用し、parseIntと組み合わせます。

function is_int(x)
{
    return (!isNaN(x) && parseInt(x) == x)
}

ここで提案されているように、次のことも行います。

function isInt(n) {
   return n % 1 === 0;
}
于 2012-11-18T23:07:36.247 に答える
0

Javascript は typeof を提供します

https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/typeof

   // Numbers
   typeof 37 === 'number';
   typeof 3.14 === 'number';
   typeof Math.LN2 === 'number';
   typeof Infinity === 'number';
   typeof NaN === 'number'; // Despite being "Not-A-Number"
   typeof Number(1) === 'number'; // but never use this form!
于 2012-11-18T23:10:11.803 に答える
0

整数の parseFloat() と parseInt() に相当する数値は同じになります。したがって、次のようにすることができます。

function isInt(value){ 
    return (parseFloat(value) == parseInt(value)) && !isNaN(value);
}

それで

if (isInt(x)) // do work
于 2012-11-18T23:16:46.763 に答える