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,
   '', '', '', '', '', '', '',
   '', '', '', ''
]