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

JavaScriptの配列要素の重複を含むコモンズ


問題

最初で唯一の引数として、文字列の配列arrを受け取るJavaScript関数を作成する必要があります。

この関数は、配列arr (重複を含む)内のすべての文字列に表示されるすべての文字の配列を返すことになっています。 。

たとえば、文字がすべての文字列で2回出現するが、3回出現しない場合、その文字を最終的な回答に2回含める必要があります。

たとえば、関数への入力が-

の場合
const arr = ['door', 'floor', 'crook'];

その場合、出力は-

になります。
const output = ['r', 'o', 'o'];

このためのコードは-

になります
const arr = ['door', 'floor', 'crook'];
const findCommon = (arr = []) => {
   let prev = null;
   arr.forEach((str) => {
      const next = {};
      for(const val of str){
         if(!prev){
            next[val] = (next[val] || 0) + 1;
         }else if(prev[val]){
            prev[val] -= 1;
            next[val] = (next[val] || 0) + 1;
         };
      };
      prev = next;
   });
   const res = Object.keys(prev).reduce((acc, val) => {
      for(let i = 0; i < prev[val]; i++){
         acc.push(val);
      }
      return acc
   }, []);
   return res;
};
console.log(findCommon(arr));

出力

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

になります
[ 'r', 'o', 'o' ]

  1. Javascriptで配列を空にする方法

    JavaScriptで配列をクリア/空にする方法は複数あります。コンテキストに基づいてそれらを使用する必要があります。それぞれを見てみましょう。 -として定義された配列があると仮定します let arr = [1, 'test', {}, 123.43]; 新しい配列に置き換える- arr = []; これが最速の方法です。これにより、arrが新しい配列に設定されます。これは、他の場所から元のarrへの参照がない場合に最適です。そうした場合、それらの参照は更新されず、それらの場所は引き続き古い配列を使用します。 長さプロップを0に設定- arr.length = 0 これに

  2. JavaScriptの基本的な配列メソッド

    いくつかの基本的なJavaScript配列メソッドは次のとおりです- メソッド 説明 Array.push() 配列の最後に要素を追加します。 Array.pop() 配列の最後から要素を削除します。 Array.unshift() 配列の先頭に要素を追加するには Array.shift() 配列の前面から要素を削除します。 Array.splice() スプライスに要素を追加または削除するには 以下は、基本的な配列メソッドのコードです- 例 <!DOCTYPE html> <html lang="en