js 配列エントリ() 反復メソッドを取得する

js 配列エントリ() 反復メソッドを取得する

1.entires() メソッドの詳細な構文

entries()メソッドは、配列の(key/value)を含む配列反復子オブジェクトを返します。

反復オブジェクト内の配列のインデックス値がkeyとして使用され、配列要素がvalueとして使用されます。そのプロトタイプ(__proto__:Array Iterator)には、イテレータを走査して元の配列の[key,value]を取得するために使用できるnextメソッドがあります。ここでは、関連するイテレータの知識が必要です。

2.entires() メソッドの一般的な使用法と注意事項

2.1 イテレータオブジェクトを返す

    var arr = ["赤", "青", "緑"]
    var x = arr.entries()
    console.log(x); // 配列イテレータ {}
    console.log(x.next()) //{値: 配列:[0, "red"],done:false}
    console.log(x.next()) //{値: 配列:[1, "blue"],done:false}
    console.log(x.next()) //{値: 配列:[2, "green"],done:false}
    console.log(x.next()) //{値: 未定義、完了: true}

2.2 for...of...の使用

    定数オプション = [1, , , , 5];
    for (const [インデックス, 値] of options.entries()) {
      console.log(値);
    }
    // 0 1
    // 1 未定義
    // 2 未定義
    // 3 未定義
    // 4 5

2.3 2次元配列の行のソート

    関数sortTwo(arr) {
      var エントリ = arr.entries()
      var フラグ = true
      while (フラグ) {
        var res = エントリ.next()
        (!res.done)の場合{
          res.value[1].sort((a, b) => a - b);
          フラグ = true
        } それ以外 {
          フラグ = 偽
        }
      }
      リターン
    }
    var arr = [[1, 3, 2], [44, 33], [11, 55, 44, 33]]
    ソート2(arr)
    console.log(arr); // [[1, 2, 3], [33, 44], [11, 33, 44, 55]]

上記のコードでは、 sortTwoメソッドは、まず渡された配列の反復オブジェクトを取得し、次に初期化フラグをtrueに定義し、反復オブジェクトエントリのnextメソッドをentiresに呼び出してresオブジェクトに割り当て、 resオブジェクトのd one属性を判断します。値がtrueの場合、再帰が可能であることを意味します。 res.value 2 次元配列の各行に対応し、項目をソートできます。値がflaseの場合、再帰が終了したことを意味します。

要約:

これで、js 配列エントリ()を使用して反復処理メソッドを取得する方法に関するこの記事は終了です。js 配列エントリ()を使用して反復処理メソッドを取得する方法に関するその他の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後も 123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScript配列の一般的なメソッドの詳細な説明
  • JavaScript配列の一般的なメソッドの概要
  • JavaScript配列の一般的なメソッドの概要
  • JavaScript インタビュー: 配列の平坦化メソッドを実装する方法
  • JS配列の組み込みトラバーサルメソッドとその違いについての簡単な説明
  • JS配列メソッドの詳細な説明

<<:  DockerコンテナはホストのMySQL操作にアクセスする

>>:  ウェブページのカスタム選択ボックス選択

推薦する

MySQL がデフォルトの分離レベルとして繰り返し読み取りを選択する理由

目次Oracle 分離​​レベルMySQL 分離レベル要約する多くの読者は、MySQL のトランザク...

HTML でのアンカーポイントの使用_PowerNode Java アカデミー

ここで、アンカー ポイントを制御するいくつかの状況をまとめてみましょう。 1. 同じページ <...

SQLはLeetCodeを実装します(180.連続した数字)

[LeetCode] 180. 連続した数字少なくとも 3 回連続して出現するすべての数字を検索す...

クラウドネイティブテクノロジーKubernetesスケジューリングユニットポッドの使用の詳細な説明

k8s の最小のスケジューリング単位 --- pod前回の記事では、k8s が解決できる問題を簡単に...

MySQL 権限とデータベース設計のケーススタディ

権限とデータベース設計ユーザー管理SQLyogを使用してユーザーを作成し、権限を付与する基本コマンド...

CentOS7.4 で JDK1.8 をインストールするためのグラフィカル チュートリアル

Linux インストール JDK1.8 手順1. CentOS に独自の openJDK があるかど...

クールなネオンライト効果を実現する純粋な CSS (デモ付き)

私は最近、YouTube の CSS アニメーション効果チュートリアル シリーズをフォローしています...

React は antd のアップロード コンポーネントを使用してファイル フォーム送信機能を実装します (完全なコード)

私はプロジェクトを実行するために react を使い始めたばかりで、非常に未熟で完全な初心者です。私...

カタツムリ映画システムのDocker展開の詳細なプロセス分析

環境に関する声明ホストOS: Cetnos7.9 最小インストールdocker バージョン: 20....

IPとポートが接続可能かどうかを検出する方法

Windows コマンドテルネット形式: telnet IP ポート場合: テルネット 191.1....

OracleデータをMySQLデータベースに抽出する実装プロセス

Oracle データベースから MySQL データベースへの移行では、Oracle データベース モ...

MySQLでデータをエクスポートするいくつかの方法の詳細な説明

MySQL データをエクスポートする目的は、データベースのバックアップ、テーブル構造のエクスポート、...

開発にVscodeとdockerを組み合わせて使用​​する詳細なプロセス

序文Docker と VS Code を使用すると、ローカル開発環境全体を最適化し、プロジェクトの進...

JavaScriptにおけるこれの深い理解

Jsでのこれの深い理解JavaScriptスコープはstatic scopeスコープですが、 Jsの...

MySQLテーブルシャーディングとパーティショニングの具体的な実装方法

縦型テーブル垂直テーブル分割とは、多数の列を持つテーブルを複数のテーブルに分割することを意味します。...