マッピング関数を使った配列の等価性のチェック

JavaScriptJavaScriptBeginner
今すぐ練習

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

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、JavaScript を使って、与えられたマッピング関数に基づいて配列のすべての要素が等しいかどうかを確認する方法を探ります。配列の最初の要素にマッピング関数を適用し、残りの要素を最初の要素と比較するために Array.prototype.every() を使う allEqualBy 関数を使います。この実験は、マッピング関数の概念と、配列内の要素を比較するためにそれをどのように使うかを理解するのに役立ちます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/array_methods("Array Methods") subgraph Lab Skills javascript/variables -.-> lab-28324{{"マッピング関数を使った配列の等価性のチェック"}} javascript/data_types -.-> lab-28324{{"マッピング関数を使った配列の等価性のチェック"}} javascript/arith_ops -.-> lab-28324{{"マッピング関数を使った配列の等価性のチェック"}} javascript/comp_ops -.-> lab-28324{{"マッピング関数を使った配列の等価性のチェック"}} javascript/array_methods -.-> lab-28324{{"マッピング関数を使った配列の等価性のチェック"}} end

与えられた関数を使って配列要素が等しいかどうかを確認する

配列のすべての要素が等しいかどうかを確認するには、allEqualBy 関数を使います。この関数は、与えられたマッピング関数 fn を配列 arr の最初の要素に適用します。その後、Array.prototype.every() を使って、配列のすべての要素に対して fn が最初の要素に対して返したものと同じ値を返すかどうかを確認します。この関数は、厳密な比較演算子を使っており、NaN 自身の不等性を考慮していません。

以下は allEqualBy のコードです。

const allEqualBy = (arr, fn) => {
  const eql = fn(arr[0]);
  return arr.every((val) => fn(val) === eql);
};

このようにして allEqualBy を使うことができます。

allEqualBy([1.1, 1.2, 1.3], Math.round); // true
allEqualBy([1.1, 1.3, 1.6], Math.round); // false

この関数を使ってコーディングを練習するには、ターミナル/SSH を開いて node と入力します。

まとめ

おめでとうございます!「関数に基づいて配列要素が等しいかどうかを確認する」実験を完了しました。スキルを向上させるために、LabEx でさらに多くの実験を練習できます。