1. ホーム
  2. javascript

[解決済み] map()関数内のインデックス

2022-03-22 12:03:25

質問

の中でインデックス番号を取得するオプションがありません。 map 関数を使用して List から Immutable.js :

var list2 = list1.map(mapper => { a: mapper.a, b: mapper.index??? }).toList();

ドキュメンテーションでは その map() を返します。 Iterable<number, M> . 私が必要としていることを実現するエレガントな方法はないでしょうか?

どのように解決するのですか?

あなたは、現在のイテレーションの index に対して map メソッドの 2 番目のパラメータを使用します。

const list = [ 'h', 'e', 'l', 'l', 'o'];
list.map((currElement, index) => {
  console.log("The current iteration is: " + index);
  console.log("The current element is: " + currElement);
  console.log("\n");
  return currElement; //equivalent to list[index]
});

出力します。

The current iteration is: 0 <br>The current element is: h

The current iteration is: 1 <br>The current element is: e

The current iteration is: 2 <br>The current element is: l

The current iteration is: 3 <br>The current element is: l 

The current iteration is: 4 <br>The current element is: o

こちらもご覧ください。 https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array/map

パラメータ

コールバック 新しい Array の要素を生成する関数で、3 つの引数を取ります。

1) currentValue
配列の中で現在処理されている要素。

2) インデックス
配列の中で現在処理中の要素のインデックスを指定します。

3) 配列
配列マップが呼び出された。