ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScriptで整数かどうかを判断する方法

JavaScriptで整数かどうかを判断する方法

coldplay.xixi
coldplay.xixiオリジナル
2021-04-06 17:06:295029ブラウズ

整数かどうかを判定する Javascript メソッド: 1. 剰余演算子を使用して判定; 2. Math.round、Math.ceil、Math.floor を使用して判定; 3. parseInt で判定; 4.ビット演算による判定を行います。

JavaScriptで整数かどうかを判断する方法

このチュートリアルの動作環境: Windows 7 システム、JavaScript バージョン 1.8.5、DELL G3 コンピューター。

整数かどうかを判断する Javascript メソッド:

メソッド 1. 剰余演算子を使用して

Any を判断します。整数は 1 で割り切れ、余りは 0 になります。このルールを使用して、整数かどうかを判断します。

function isInteger(obj) {
 return obj%1 === 0
}
isInteger(3) // true
isInteger(3.3) // false 
isInteger('') // true
isInteger('3') // true
isInteger(true) // true
isInteger([]) // true

空の文字列、文字列型の数値、ブール値の true、および空の配列の場合は true を返します。これらの型の内部変換の詳細に興味がある場合は、JavaScript の奇妙な False Values

したがって、typeof# を追加するなど、最初にオブジェクトが数値であるかどうかを判断する必要があります。 ##

function isInteger(obj) {
 return typeof obj === 'number' && obj%1 === 0
}
isInteger('') // false
isInteger('3') // false
isInteger(true) // false
isInteger([]) // false

方法 2: Math.round、Math.ceil、および Math.floor を使用して、

整数が丸め後もそれ自体と等しいかどうかを判断します。この機能を使用して、整数であるかどうかを判断します。Math.floor の例では、次のようにします。

function isInteger(obj) {
 return Math.floor(obj) === obj
}
isInteger(3) // true
isInteger(3.3) // false
isInteger('') // false
isInteger('3') // false
isInteger(true) // false
isInteger([]) // false

方法 3. parseInt によって判断する

function isInteger(obj) {
 return parseInt(obj, 10) === obj
}
isInteger(3) // true
isInteger(3.3) // false
isInteger('') // false
isInteger('3') // false
isInteger(true) // false
isInteger([]) // false、
//很不错,但也有一个缺点
isInteger(1000000000000000000000) // false

理由は、parseInt が強制するためです。解析する前に解析する整数。最初のパラメータは文字列に解析されます。数値を整数に変換するこの方法は、良い選択ではありません。

方法 4. ビット操作で決定する

function isInteger(obj) {
 return (obj | 0) === obj
}
isInteger(3) // true
isInteger(3.3) // false
isInteger('') // false
isInteger('3') // false
isInteger(true) // false
isInteger([]) // false
//这个函数很不错,效率还很高。但有个缺陷,上文提到过,位运算只能处理32位以内的数字,对于超过32位的无能为力
isInteger(Math.pow(2, 32)) // 32位以上的数字返回false了

方法 5. ES6 は Number.isInteger を提供します

Number.isInteger(3) // true
Number.isInteger(3.1) // false
Number.isInteger('') // false
Number.isInteger('3') // false
Number.isInteger(true) // false
Number.isInteger([]) // false

関連する無料学習の推奨事項: javascript(ビデオ)

以上がJavaScriptで整数かどうかを判断する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。