JS を使用して要素が配列であるかどうかを判断する例

JS を使用して要素が配列であるかどうかを判断する例

検証できるデータの種類は次のとおりです

a = [1,2,3,4,5,6]とします。
 b = [とします
 {名前: '張飛'、タイプ: 'タンク'}、
 {名前: '関羽'、タイプ: '兵士'}、
 {名前: '劉備'、タイプ: 'シューター'}、
 ];
 c = 123 とします。
 d = 'www' とします。
 e = {name: 'Angela', type: 'mage'} とします。

1. Array.isArray() を通じて

Array.isArray() は要素が配列かどうかを判定し、配列の場合は true を返し、配列でない場合は false を返します。

console.log(Array.isArray(a)); // 真
 console.log(Array.isArray(b)); // 真
 console.log(Array.isArray(c)); // 偽
 console.log(Array.isArray(d)); // 偽
 console.log(Array.isArray(e)); // 偽

2. インスタンスで判断する

instanceof 演算子は、インスタンスがオブジェクトのプロトタイプ チェーンに属しているかどうかを検出するために使用されます。

console.log(配列のインスタンス); // true
 console.log(b 配列のインスタンス); // true
 console.log(c 配列のインスタンス); // false
 console.log(d 配列インスタンス); // false
 console.log(e 配列インスタンス); // false

物体を判断するためにも使える

console.log(e instanceof Object); // true

配列かどうかを判断するには、変数配列 (a, b) のプロトタイプ チェーンに Arrray.prototype プロパティが存在するかどうかを確認する必要があります。明らかに、a と b は配列であり、Arrray.prototype プロパティを持っているので、これは true です。

3. オブジェクトコンストラクタのコンストラクタで判断する

Object の各インスタンスには、各オブジェクトを作成する関数を格納するコンストラクターがあります。

console.log(a.constructor === 配列); // true
console.log(b.constructor === 配列); // true

以下はその他のデータ型の検証です

console.log(c.constructor === Number); // true
console.log(d.constructor === String); // 真
console.log(e.constructor === Object); // true

4. Object.prototype.toString.call() で判断する

プロトタイプチェーンを通じて呼び出しを検索する

console.log(Object.prototype.toString.call(a) === '[オブジェクト配列]'); // true
console.log(Object.prototype.toString.call(b) === '[オブジェクト配列]'); // true

以下はその他のデータ型の検証です

console.log(Object.prototype.toString.call(c) === '[オブジェクト番号]'); // true
console.log(Object.prototype.toString.call(d) === '[object String]'); // true
console.log(Object.prototype.toString.call(e) === '[object Object]'); // true

5. オブジェクトプロトタイプチェーンのisPrototypeOf()で判断する

Array.prototype プロパティは、Array コンストラクターのプロトタイプであり、オブジェクトが別のオブジェクトのプロトタイプ チェーン内に存在するかどうかをテストするために使用される isPrototypeOf() メソッドが含まれています。

console.log(Array.prototype.isPrototypeOf(a)); // 真
 console.log(Array.prototype.isPrototypeOf(b)); // 真
 console.log(Array.prototype.isPrototypeOf(c)); // 偽
 console.log(Array.prototype.isPrototypeOf(d)); // 偽
 console.log(Array.prototype.isPrototypeOf(e)); // 偽

要約する

JS を使用して要素が配列であるかどうかを判断する方法については、これで終わりです。要素が配列コンテンツであるかどうかの JS 判断の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • JavaScript で配列に指定された要素が含まれているかどうかを判断する方法
  • 要素が配列内にあるかどうかを判断するための JS 実装コード
  • 配列内に重複要素があるかどうかを判定するJSの方法の概要
  • 配列に特定の要素がすでに含まれているかを判断するJavaScript関数
  • 配列に特定の要素が含まれているかどうかを判定するJS実装例
  • 配列に要素が含まれているかどうかを判断するための js 関数実装メソッド
  • 配列に要素が含まれているかどうかを判断するためのjs拡張メソッドを記述する
  • JavaScript で配列内の要素が繰り返されているかどうかを判断するためのメソッドのコレクション
  • 配列に特定の要素が含まれているかどうかを判断するには js を使用します (PHP の in_array() と同様)
  • 配列に要素が含まれているかどうかを判断するための JS メソッドの概要

<<:  JSで実現したページサイドバーの効果に関する研究

>>:  さまざまな種類の jQuery Web ページ検証コード プラグイン コード例

推薦する

MySQLサービスを削除する具体的な方法

MySQLは次のエラーを表示します「コントロール パネル -> 管理ツール -> サービ...

MySQLにおける分散ロックの考え方をDBの助けを借りて詳しく説明します

序文スタンドアロン ロックであっても分散ロックであっても、共有データに基づいて現在の操作の動作を判断...

Vue3.0 における Ref と Reactive の違いの詳細な分析

目次参照と反応参照反応的RefとReactiveの違いshallowRef と shallowRea...

モバイルでのHTML5経由のファイルアップロード

ほとんどの場合、PC でファイルをアップロードするにはプラグインが使用され、フラッシュが導入されても...

テーブルはセルとimg画像を結合してtd HTML全体を埋めます

ソースコード(一部のクラスは削除されています):コードをコピーコードは次のとおりです。 <テー...

Dockerは公式Redisイメージをインストールし、パスワード認証を有効にします

参考: Docker 公式 Redis ドキュメント1. 特別なバージョン要件がある場合は、redi...

WeChatアプレットの下部にあるタブバーがコンテンツをブロックする問題に対処する簡単な方法

WeChatアプレットでタブバーを設定すると、重要なコンテンツがブロックされ、iPhoneXなどの異...

IE8を閲覧するときにウェブサイトが自動的にIE7互換モードを使用するようにする

序文IE の将来のすべてのバージョンで Web ページの外観が一貫していることを保証するために、IE...

Linux の非常に詳細な gcc アップグレード プロセス

目次序文1. 現在のgccバージョン2. gccをインストールする3.gmpのインストール4.MPF...

CSS3 で実装された価格表

結果: 実装コードhtml <div id="価格表" class=&qu...

CentOS 8.0.1905 は ZABBIX 4.4 バージョンをインストールします (検証済み)

Zabbix サーバー環境プラットフォームバージョン: ZABBIX バージョン 4.4システム:...

MySQLデータのバックアップ方法の選択と考え方

目次1. rsync、cpでファイルをコピーする2. xxxをoutfile構文に選択する3. 遅延...

MySQL エラー: ロックを取得しようとしたときにデッドロックが見つかりました。トランザクションの解決策を再起動してください

問題を見つける最近、以前のデータを入力していたときに、プログラムが突然次のエラーを報告しました。 [...

JavaScript 配列の詳細な概要

目次1. 配列誘導1. 文字列を配列に分割する2. コレクションとマップを新しい配列に変換する3. ...