JavaScript が変数のデータ型を決定する

高洛峰
リリース: 2017-01-14 10:12:23
オリジナル
1319 人が閲覧しました

最近、データ型を決定するための js の処理を​​伴うプロジェクトに取り組み、インターネットで関連情報を検索し、さまざまなデータ型の判定を個人的にテストしました。以下、編集者が具体的な内容をまとめてご紹介しますので、ぜひ参考にしてください!

1. JSのデータ型

1. 数値型(Number):整数と浮動小数点数を含みます。

2. ブール

3. 文字列

4. オブジェクト

5. 配列

6. Null

7. 未定義

2. 変数のデータ型を決定する

1. 数値型 (数字)

より一般的に使用される判定方法は次のとおりです:

function isNumber(val){
return typeof val === 'number';
}
ログイン後にコピー


ただし、場合によってはいいえ、たとえば:

var a;
alert(isNumber(parseInt(a)));
ログイン後にコピー

ここで表示される内容は、次の図に示すように true です。 :

JavaScript が変数のデータ型を決定する

しかし、実際には、変数 a は NaN であり、数値演算には使用できません。

したがって、上記の関数は次のように変更できます:

function isNumber(val){
return typeof val === 'number' && isFinite(val);
}
ログイン後にコピー

変更後は、下の図に示すように false が表示されます:

JavaScript が変数のデータ型を決定する

ちなみに、JavaScript の isFinite() 関数を紹介します。引数が無限大であるかどうかをチェックするために使用され、number が有限数である (または有限数に変換できる) 場合は true を返します。それ以外の場合、number が NaN (非数値)、または正または負の無限大数値の場合は、false が返されます。

2. Boolean

Boolean型の判定は比較的簡単で以下の方法で判定できます:

/*
判断变量val是不是布尔类型
*/
function isBooleanType(val) {
return typeof val ==="boolean";
}
ログイン後にコピー

テストコード:

ログイン後にコピー

実行結果:

JavaScript が変数のデータ型を決定する

3.

文字列型の判定は比較的簡単で、以下の方法で判定できます:

/*
判断变量是不是字符串类型
*/
function isStringType(val) {
return typeof val === "string";
}
ログイン後にコピー


テストコード:

ログイン後にコピー

実行結果:

JavaScript が変数のデータ型を決定する

4. 未定義(Unknown)


未定義の判定は比較的簡単で以下の方法で判定できます:

/*
判断变量是不是Undefined
*/
function isUndefined(val) {
return typeof val === "undefined";
}
ログイン後にコピー

テストコード:

ログイン後にコピー

実行結果:

JavaScript が変数のデータ型を決定する

5. オブジェクト(Object)


変数がNull, の場合、typeofはオブジェクトも返すため、typeof で直接 Object を判断することはできません。


は次のようになります:

function isObj(str){
if(str === null || typeof str === 'undefined'){
return false;
}
return typeof str === 'object';
}
ログイン後にコピー

テストコード:

ログイン後にコピー


実行結果:

JavaScript が変数のデータ型を決定する

6. null値(Null)


null値を判定するには、val === nullを使用します。

function isNull(val){
return val === null;
}
ログイン後にコピー


テストコード:

/*
判断变量是不是null
*/
function isNull(val){
return val === null;
}
/*测试变量*/
var a;
var b = null;
var c = "str";
//弹出运行结果
alert("变量a是null的判断结果是:"+isNull(a));//false
alert("变量b是null类型的判断结果是:"+isNull(b));//true
alert("变量c是null类型的判断结果是:"+isNull(c));//false
ログイン後にコピー


実行結果:

JavaScript が変数のデータ型を決定する

7. 配列


typeofでは配列の型を判定できません。変数が配列型の場合、typeof はオブジェクトを返すためです。 Arrayタイプを決定するための2つの方法があります:

/*判断变量arr是不是数组
方法一
*/
function isArray(arr) {
return Object.prototype.toString.apply(arr) === '[object Array]';
}
/*判断变量arr是不是数组
方法二
*/
function isArray(arr) {
if(arr === null || typeof arr === 'undefined'){
return false;
}
return arr.constructor === Array;
}
ログイン後にコピー
-Testコード:
ログイン後にコピー
RUNNING結果:


上記のコンテンツは、JavaScriptの知識ポイントの要約ですエディター (6) 変数のデータ型を決定するための JavaScript の関連知識。さらに詳しく知りたい場合は、PHP 中国語 Web サイトに注目してください。

JavaScript の変数データ型の判定に関するその他の記事については、PHP 中国語 Web サイトに注目してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!