js実践記事 - 配列またはオブジェクト内の重複したオプションを削除する


JavaScript では、配列の重複排除、オブジェクトの重複排除など、さまざまな方法を使用して配列またはオブジェクトの重複を削除できます。これらの方法のいくつかを次に示します。

配列から重複を削除します

方法 1: セットを使用する

Set を使用するのが、配列から重複を削除する最も簡単かつ迅速な方法です。Set オブジェクトは、配列 (または反復可能なプロパティを持つ他のオブジェクト) をパラメーターとして受け入れ、一意の要素を含む新しい配列を返すことができる一意の値のコレクションです。例えば:

javascriptCopy code
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]

方法 2: フィルターとindexOfを使用する

filter メソッドとindexOf メソッドを使用して、配列から重複を削除できます。例えば:

javascriptCopy code
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = arr.filter((item, index) => {
  return arr.indexOf(item) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]

方法 3:reduce と include を使用する

重複は、reduce メソッドと include メソッドを使用して配列から削除できます。例えば:

javascriptCopy code
const arr = [1, 2, 3, 3, 4, 5, 5];
const uniqueArr = arr.reduce((prev, cur) => {
  if (!prev.includes(cur)) {
    prev.push(cur);
  }
  return prev;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]

オブジェクトから重複を削除する

方法 1: for...in と hasOwnProperty を使用する

for...in ループを使用してオブジェクトのプロパティを反復処理し、hasOwnProperty メソッドを使用してプロパティがオブジェクト自身のプロパティであるかどうかを確認します。例えば:

javascriptCopy code
const obj = {
  a: 1,
  b: 2,
  c: 3,
  d: 3,
  e: 4,
  f: 4
};
const uniqueObj = {};
for (const key in obj) {
  if (obj.hasOwnProperty(key)) {
    uniqueObj[obj[key]] = key;
  }
}
console.log(uniqueObj); // { '1': 'a', '2': 'b', '3': 'c', '4': 'e' }

方法 2: Object.keys とreduce を使用する

Object.keys メソッドを使用してオブジェクトのすべてのプロパティを取得し、reduce メソッドを使用して重複を削除します。例えば:

javascriptCopy code
const obj = {
  a: 1,
  b: 2,
  c: 3,
  d: 3,
  e: 4,
  f: 4
};
const uniqueObj = Object.keys(obj).reduce((prev, key) => {
  const value = obj[key];
  if (!prev.hasOwnProperty(value)) {
    prev[value] = key;
  }
  return prev;
}, {});
console.log(uniqueObj); // { '1': 'a', '2': 'b', '3': 'c', '4': 'e' }

上記は、配列またはオブジェクト内の重複を削除するいくつかの方法です。どの方法を選択するかは、個人の好みと特定の状況によって異なります。

おすすめ

転載: blog.csdn.net/qq_28736409/article/details/129224420