私は最近、データ型を決定するためにJSの処理を含むプロジェクトを作成し、関連情報をオンラインで検索し、さまざまなデータ型の判断を個人的にテストしました。これは絶対に安全です。以下では、編集者が参照のために特定のコンテンツを共有します!
1。JSのデータ型
1。数値タイプ(数):整数と浮動小数点数を含む。
2。ブール
3。文字列タイプ
4。オブジェクト
5.Array
6. null値(null)
7。未定義
2。変数のデータ型を決定します
1.Numberタイプ(番号)
最も一般的に使用される判断方法は次のとおりです。
関数isNumber(val){return typeof val == 'number';}しかし、次のような状況は機能しません。
var a; alert(isnumber(parseint(a)));
下の図に示すように、ここにポップアップするものは真実です。
しかし、実際、変数AはNANであり、数値操作には使用できません。
したがって、上記の関数は次のように変更できます。
関数isNumber(val){return typeof val === 'number' && isfinite(val);}変更後、下の図に示すように、Falseがポップアップ表示されます。
ちなみに、JavaScript isFinite()関数は、そのパラメーターが無限であるかどうかを確認するために使用されます。数値が有限数(または有限数に変換できる場合)の場合、trueを返します。それ以外の場合、数値がnan(非番号)、または正または負の無限の数の場合、falseが返されます。
2。ブール
ブールタイプの判断は比較的単純であり、次の方法を使用して判断を下すことができます。
/*可変valがブールタイプであるかどうかを判断*/function isbooleantype(val){return typeof val === "boolean";}テストコード:
<script type = "text/javascript">/*可変valがブール型タイプであるかどうかを判断します*/function isbooleantype(val){return typeof val === "boolean";} var b = false; alert( "変数aの結果はブーリアンタイプです。 "+isbooleantype(b)); </script>実行結果:
3。文字列
文字列タイプの判断は比較的単純であり、次の方法を使用して判断を下すことができます。
/*変数が文字列タイプであるかどうかを判断します
テストコード:
<script type = "text/javascript">/*変数が文字列タイプであるかどうかを判断します*/function isstringtype(val){return typeof val === "string";} var s = "strtype"; alert( "変数aの結果は文字列タイプisです:"+isstringtype "+isstringtype(s)); </script>実行結果:
4。未定義
未定義の判断は比較的単純であり、次の方法で判断できます。
/*変数が未定義であるかどうかを判断します
テストコード:
<script type = "text/javascript"> var a; // a is undefinedvar s = "strtype";/*undefined*/function isundefined(val){val == "undefined";}アラート( "変数aの結果は、未定義です。 「+isundefined(s); </script>実行結果:
5。オブジェクト
変数がnullの場合、typeofもオブジェクトを返します。オブジェクトはtypeofで直接判断することはできません。
このようなものでなければなりません:
function isobj(str){if(str === null || typeof str === 'undefined'){return false;} return typeof str === 'object';}テストコード:
<script type = "text/javascript">/*変数がオブジェクトタイプであるかどうかを判断します*/function isobj(str){if(str === null || typeof str === 'undefined'){return false;} return falsof;} null、typeof b === 'object' ''判断結果は: "+(typeof b === 'object' ')) "+isobj(c)); // falsealert("変数dの判断結果はオブジェクトタイプ: "+isobj(d));実行結果:
6. null値(null)
val === nullを使用してnull値を決定するだけです
関数isnull(val){return val === null;}テストコード:
/*変数がnullであるかどうかを判断します*/function isnull(val){return val === null;}/*test変数*/var b = null; var c = "str"; // run resultアラートをポップアップします( "変数aの判断結果はnullです:"+isnull(a)); "+isnull(b)); // truealert("変数cの判断結果はnullタイプです: "+isnull(c)); // false実行結果:
7.Array
ArrayタイプはTypeofで審査できません。変数が配列タイプの場合、TypeOFはオブジェクトを返すためです。
配列タイプを決定する2つの方法を次に示します。
/*変数arrがarrayメソッド1*/function isArray(arr){return object.prototype.tostring.apply(arr)=== '[object array]';}/*可変arrはarrayであるかどうかを判断します。 ===配列;}テストコード:
<script type = "text/javascript">/*変数arrがarrayメソッドであるかどうかを判断します1*/function isarray(arr){return object.prototype.tostring.apply(arr)=== '[object array]';}/*変数arrが配列方法2*/function null | = = null '未定義'){return false;} return arr.constructor === array;} //テスト変数var a = null; var b = ""; var = [,,]; var arr = new array(); // test result document.write.write( "arr変数は配列タイプ、タイプArr == 'object'));document.write("<br/>");document.write("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- t.write( "<br/>"); document.write( "変数Aが配列タイプであるという判断の結果は次のとおりです。タイプの判断結果は次のとおりです。 "+isArray(c)); document.write(" <br /> "); document.write(" Arrayタイプである変数ARRの判断結果は: "+isArray(arr)); document.write(" <br/> "); document.write(" Array arsarray(array); item("<br/>");document.write("---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ent.write( "変数Aの判断結果は配列タイプです:"+isarray(a)); document.write( "<br/>"); document.write( "変数Bの判断結果はアレイタイプです:"+isarray(b)); document.write( "<br/>"); document.write( document.write( "<br/>"); document.write( "変数arrがarrayタイプであるという判断の結果は次のとおりです。実行結果:
上記のコンテンツは、JavaScript判断変数データ型のJavaScript知識ポイント(VI)の概要です。私はそれが誰にでも役立つことを願っています。もっと知りたい場合は、wulin.comのWebサイトに注意してください!