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のarray.entries()メソッド。

    JavaScriptのarray.entries()メソッドは、キーと値のペアを配列イテレータオブジェクトとして返します。 以下は、array.entries()メソッドのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /&

  2. JavaScript-配列オブジェクトの長さ

    JavaScriptのlengthプロパティは、オブジェクトのサイズを返します。以下は、文字列および配列オブジェクトの長さのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document