ホームページ >ウェブフロントエンド >jsチュートリアル >jQueryは変数タイプを取得します
jQueryの.type()
メソッド:可変タイプの検出に深く潜ります
jQueryは、JavaScript変数のタイプを決定するための強力な関数.type()
を提供します。 JavaScriptのtypeof
オペレーターとは異なり、.type()
はより正確な結果を提供し、アレイとヌル値を正しく識別します。 その実装は、包括的なタイプチェックのためのtoString()
およびclass2type
オブジェクトをレバレッジします。
関数の中核を調べてみましょう:.type()
<code class="language-javascript">type: function( obj ) { return obj == null ? String( obj ) : class2type[ toString.call(obj) ] || "object"; },</code>が
の場合、obj
( "null")の文字列表現を返します。それ以外の場合は、オブジェクトのクラスの文字列表現をそのタイプにマッピングするルックアップテーブルであるnull
オブジェクトを参照します。 obj
で一致が見つからない場合、デフォルトは「オブジェクト」になります。
class2type
class2type
オブジェクトは次のように定義されています
このオブジェクトは、class2type
の精度の鍵です。
<code class="language-javascript">var class2type = { "[object Array]": "array", "[object Boolean]": "boolean", "[object Date]": "date", "[object Function]": "function", "[object Number]": "number", "[object Object]": "object", "[object RegExp]": "regexp", "[object String]": "string" };</code>。
実用的な例:.type()
toString.call(obj)
class2type
これは、JavaScriptアレイを正しく識別する方法を示しています
よくある質問(FAQ)
<code class="language-javascript">var $forms = Array($('#register-form1'), $('#register-form2'), $('#register-form3')); console.log($.type($forms)); // Output: array</code>
次のFAQは、jQueryの.type()
メソッドとjavascriptの
jquery.type()vs。javascript typeof:
両方とも変数タイプを決定しますが、.type()
には制限があり、null、array、およびオブジェクトの「オブジェクト」を返します。 jQuery's typeof
は、より微妙なタイプの検出を提供し、配列、null、およびさまざまなオブジェクトタイプを正確に分類します。
特定のデータ型のチェック:簡単な比較を使用してください:typeof
.type()
カスタムオブジェクトの作成に使用されるコンストラクター関数の名前を返します。
if ($.type(variable) === "array") { ... }
。
.type()
jQueryオブジェクトの「オブジェクト」を返します。詳細情報については、やなどのjqueryの方法を使用してください。
.type()
null
undefined
ナンハンドリング:.type()
NaN
を「数字」として扱います。
配列対オブジェクトの差別化:とは異なり、typeof
とは異なり、アレイ( "配列")とオブジェクト( "object")を区別します。
.type()
は、jquery 1.4.3以降から入手できます。
.type()
関数を正しく識別し、「関数」を返します。
.type()
この包括的な説明は、JavaScriptで堅牢な可変タイプチェックのためのjQueryの
以上がjQueryは変数タイプを取得しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。