ホームページ >ウェブフロントエンド >jsチュートリアル >.map() の要素をスキップするにはどうすればよいですか?

.map() の要素をスキップするにはどうすればよいですか?

WBOY
WBOY転載
2023-08-24 13:57:031349ブラウズ

如何跳过 .map() 中的元素?

JavaScript では、map() メソッドを使用するときに配列要素をスキップする必要がある場合があります。たとえば、配列の値が有限である場合にのみ、要素に対して数学的演算を実行した後、ある配列から別の配列に値をマッピングする必要があります。

この場合、ユーザーは次のメソッドを使用して、map() メソッドを使用するときに配列要素をスキップできます。

if-else ステートメントを使用する

array.map() メソッドでは、if-else ステートメントを使用して要素をスキップできます。要素が if-else ステートメントの条件を満たす場合、マッピングのためにその要素を返す必要がありますが、そうでない場合は null 値を返すことができます。

###文法###

ユーザーは、次の構文に従って if-else ステートメントを使用して、map() メソッド内の要素をスキップできます。

リーリー

上記の構文では、if-else ステートメントの条件が true と評価された場合は値を返し、それ以外の場合は null を返します。

例 1

以下の例では、数値を含む配列を作成します。私たちの目標は、各正の要素を 2 で乗算し、乗算配列にマップすることです。 map() メソッドでは、「要素 > 0」条件を使用して配列が正であるかどうかを確認し、それが true と評価された場合は、2 を乗算した数値を返します。

出力では、null 値を返すと配列インデックスが空であることがわかります。

リーリー

filter() メソッドを map() メソッドと組み合わせて使用​​します

map() メソッドの前に filter() メソッドを使用できます。 filter() メソッドを使用すると、いくつかの要素を削除し、別の配列内の必要な要素をフィルタリングできます。

その後、filter() メソッドによって作成された配列で map メソッドを使用できるため、map() メソッド内の要素を間接的にスキップできます。

###文法###

ユーザーは、次の構文に従って filter() メソッドを使用して、map() メソッド内の要素をスキップできます。

リーリー

上記の構文では、まず配列から値をフィルターし、フィルターされた値に対して map() メソッドを使用します。

例 2

以下の例では、さまざまな文字列値を含む配列を作成しました。私たちの目標は、最初の文字が大文字であるすべての文字列を大文字に変換することです。そこで、まず、filter() メソッドを使用して、最初の文字が大文字であるすべての文字列をフィルターし、filteredValues 配列に格納します。

その後、filteredValues 配列で map() メソッドを使用して、大文字に変換した後、新しい配列にマップします。

リーリー

array.reduce() メソッドを使用する

map() メソッドは、要素を新しい配列にマップします。同じ目的を達成するために、reduce() メソッドを使用することもできます。 reduce() メソッドを使用して空の配列を取得し、要素を 1 つずつ配列にマップできます。

###文法###

ユーザーは、次の構文に従ってreduce() メソッドを使用して、map() メソッドと同様に機能し、一部の要素をスキップできます。

リーリー

上記の構文では、特定の条件に基づいて要素を配列にプッシュします。それ以外の場合は、要素を配列にプッシュせずに配列を返し、要素をスキップします。

例 3

次の例では、2 で割り切れるすべての要素をそれ自体にマップすることが目標です。したがって、reduce() メソッドの最初のパラメータとしてコールバック関数を渡し、2 番目のパラメータとして空の配列を渡します。

コールバック関数では、条件が満たされた場合、要素を配列にプッシュし、配列を返します。それ以外の場合は、配列を変更せずに返します。

最後に、reduce() メソッドはマップされたすべての要素を含む配列を返します。これは Final_array 変数に保存され、ユーザーは出力で確認できます。

リーリー

map() メソッドで要素をスキップする 3 つの方法を学びました。最初の方法では空の要素が格納され、より多くのスペースが必要になります。2 番目の方法では、filter() メソッドのみを使用するため、時間の計算量が増加します。 3 番目の方法は、空間と時間を最適化するため、最適です。

以上が.map() の要素をスキップするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。