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

JavaScriptで長さを同じに保ちながら、配列から重複を削除します


配列を受け取り、その配列からすべての重複を削除し、最後に同じ数の空の文字列を挿入する関数を作成する必要があります。

たとえば、-4つの重複する値が見つかった場合は、すべてを削除して、最後に4つの空の文字列を挿入する必要があります。

したがって、この問題のコードを書いてみましょう-

const arr = [1,2,3,1,2,3,2,2,3,4,5,5,12,1,23,4,1];
const deleteAndInsert = arr => {
   const creds = arr.reduce((acc, val, ind, array) => {
      let { count, res } = acc;
      if(array.lastIndexOf(val) === ind){
         res.push(val);
      }else{
         count++;
      };
      return {res, count};
   }, {
      count: 0,
      res: []
   });
   const { res, count } = creds;
   return res.concat(" ".repeat(count).split(" "));
};
console.log(deleteAndInsert(arr));

出力

コンソールの出力は-

になります
[
   2, 3, 5, 12, 23, 4, 1,
   '', '', '', '', '', '', '',
   '', '', '', ''
]

  1. JavaScriptで配列からfalse値を削除するにはどうすればよいですか?

    Javascriptライブラリunderscore.js _.compact()を提供しました すべてのfalseを削除する方法 配列内の値。配列のfalse値は、NaN、未定義、空の文字列、false、および0に他なりません。出力としてfalse値のない新しい配列を返します。 構文 _.compact( array ); パラメータとして配列を受け取り、 falseのない新しい配列を返します 値。 例 <html> <body>    <script type="text/javascript"  

  2. JavaScript配列from()メソッド

    JavaScriptのfrom()メソッドは、lengthプロパティを持つ任意のオブジェクトまたは反復可能なオブジェクトからArrayオブジェクトを返すために使用されます。 構文は次のとおりです- Array.from(obj, mapFunction, val) 上記では、パラメータobjは配列に変換するオブジェクト、mapFunctionは呼び出すマップ関数、valはmapFunctionを実行するときにこれとして使用する値です。 JavaScriptでfrom()メソッドを実装しましょう- 例 <!DOCTYPE html> <html> <body