JavaScript ES6 の Number.isFinite() および Number.isNaN()
巴扎黑
巴扎黑 2017-05-18 10:52:30
0
2
560

最近 ES6 を学習しているのですが、数値拡張についていくつか質問があります。

ES6 は、Number オブジェクトに対して Number.isFinite()Number.isNaN()

という 2 つのメソッドを提供します。

ES5との違いは、Number()の呼び出しを一度キャンセルして数値以外の値を数値に変換してから判定する点です。

注: この 2 つのメソッドと従来の isFinite() メソッドおよび isNaN() メソッドの違いは、従来のメソッドでは最初に Number() を呼び出して数値以外の値を数値に変換してから、判定を行うことです。 。これら 2 つのメソッドは数値に対してのみ有効で、数値以外の場合は false を返します。

なぜこのようなことをしているのかよく分かりませんが、一度 Number() を呼び出して数値以外の値を数値に変換してから判断した方が良いのではないでしょうか?

巴扎黑
巴扎黑

全員に返信(2)
phpcn_u1582

MDNの説明を確認できます

isFinite については、Number.isFinite(true) と isFinite(true) を比較するとわかります。もちろん、Number.isFinite("") と isFinite("") も機能します。

いいねを押す +0
黄舟

これらの2つの関数は数値に対して値が限定されているかNaNであるかを判定するために使用されます。文字列などの内部の隠れた演算を数値に変換すると、直接表現したい意味が失われてしまいます。その他いくつかの問題では、数値だけでなく文字列などの型も判定できるようになります。
参考リンク:

es6
isNaN

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート