オブジェクトを反復可能なペアに変換する

Beginner

This tutorial is from open-source community. Access the source code

はじめに

この実験では、オブジェクトやその他の反復可能オブジェクトからキーと値のペアの配列からなる配列を作成する「toPairs」と呼ばれる JavaScript 関数を調べます。この実験を通じて、この関数を使用してさまざまなデータ構造をより操作しやすくアクセスしやすい形式に変換する方法を学びます。また、JavaScript における反復子と反復可能オブジェクトの概念を深く理解することができます。

オブジェクトをペアに変換する

オブジェクトをキーと値のペアの配列に変換するには、toPairs関数を使用します。コーディングを始めるには、ターミナル/SSH を開き、nodeと入力します。

toPairs関数は以下のように機能します。

  • まず、与えられた反復可能オブジェクトに対してSymbol.iteratorが定義されているかどうかを確認します。
  • Symbol.iteratorが定義されている場合、Array.prototype.entries()を使用してオブジェクトの反復子を取得し、その結果をArray.from()を使用してキーと値のペアの配列に変換します。
  • オブジェクトにSymbol.iteratorが定義されていない場合、代わりにObject.entries()を使用します。

以下はtoPairs関数のコードです。

const toPairs = (obj) =>
  obj[Symbol.iterator] instanceof Function && obj.entries instanceof Function
    ? Array.from(obj.entries())
    : Object.entries(obj);

toPairs関数は、次のようなさまざまな種類のオブジェクトで使用できます。

toPairs({ a: 1, b: 2 }); // [['a', 1], ['b', 2]]
toPairs([2, 4, 8]); // [[0, 2], [1, 4], [2, 8]]
toPairs("shy"); // [['0','s'], ['1', 'h'], ['2', 'y']]
toPairs(new Set(["a", "b", "c", "a"])); // [['a', 'a'], ['b', 'b'], ['c', 'c']]

まとめ

おめでとうございます!オブジェクトをペアに変換する実験を完了しました。技術力を向上させるために、LabEx でさらに多くの実験を行って練習してください。