はじめに
この実験では、指定された比較関数に基づいて配列内のすべての一意の値を見つけるのに役立つJavaScript関数を探ります。指定された比較関数に基づいて、各値の最初の一意の出現のみを含む新しい配列を作成するために、Array.prototype.reduce()
と Array.prototype.some()
メソッドを使用します。この実験では、JavaScriptにおける配列の操作方法を深く理解することができます。
This tutorial is from open-source community. Access the source code
💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください
この実験では、指定された比較関数に基づいて配列内のすべての一意の値を見つけるのに役立つJavaScript関数を探ります。指定された比較関数に基づいて、各値の最初の一意の出現のみを含む新しい配列を作成するために、Array.prototype.reduce()
と Array.prototype.some()
メソッドを使用します。この実験では、JavaScriptにおける配列の操作方法を深く理解することができます。
配列のすべての一意の値を見つけるには、比較関数を提供します。
Array.prototype.reduce()
と Array.prototype.some()
を使って、各値の最初の一意の出現のみを含む配列を作成します。比較関数 fn
は、比較対象の2つの要素の値を2つの引数として受け取ります。
const uniqueElementsBy = (arr, fn) =>
arr.reduce((acc, v) => {
if (!acc.some((x) => fn(v, x))) acc.push(v);
return acc;
}, []);
この関数をテストするには、以下の例を使います:
uniqueElementsBy(
[
{ id: 0, value: "a" },
{ id: 1, value: "b" },
{ id: 2, value: "c" },
{ id: 1, value: "d" },
{ id: 0, value: "e" }
],
(a, b) => a.id == b.id
); // [ { id: 0, value: 'a' }, { id: 1, value: 'b' }, { id: 2, value: 'c' } ]
ターミナル/SSHを開いて node
と入力することでコーディングの練習を始めましょう。
おめでとうございます!関数に基づく配列内の一意の値の実験を完了しました。スキルを向上させるために、LabExでさらに実験を練習できます。