Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

配列JavaScriptで最も重複の少ないアイテムを検索する


重複する値を含む可能性のあるリテラルの配列を受け取るJavaScript関数を作成する必要があります。

この関数は、最も少ない回数繰り返されるすべての要素の配列を返す必要があります。

例-入力配列が-

の場合
const arr = [1,1,2,2,3,3,3];

その場合、出力は-

になります。
const output = [1, 2];

1と2の繰り返し回数が最も少ないため(2)

const arr = [1,1,2,2,3,3,3];
const getLeastDuplicateItems = (arr = []) => {
   const hash = Object.create(null);
   let keys, min; arr.forEach(el => {
      hash[el] = hash[el] || {
         value: el, count: 0 };
         hash[el].count++; });
         keys = Object.keys(hash);
         keys.sort(function (el, b) {
            return hash[el].count - hash[b].count; });
            min = hash[keys[0]].count;
            return keys. filter(el => {
               return hash[el].count === min;
      }).
      map(el => {
         return hash[el].value;
   });
}
console.log(getLeastDuplicateItems(arr));

出力

そして、コンソールの出力は-

になります
[ 1, 2 ]

  1. JavaScriptのArray.prototype.find()メソッド。

    Array.prototype.find()メソッドは、配列内の特定の条件を満たす最初の要素値を返します。 以下は、Array.prototype.find()メソッドのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /&g

  2. JavaScriptを使用して同じ配列内の配列の要素を複製するにはどうすればよいですか?

    以下は、同じ配列内の配列の要素を複製するためのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" > <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style>   &nbs