코딩/뻘글

[알고리즘] 논리적 사고력이 필요하다.

카슈밀 2021. 12. 14. 23:33
반응형
// 요건.
// forEach문을 돌려 해당 내용과 일치하는 부분이 있으면 해당 내용만 리턴.
// 없을 경우 다른 변수를 할당.
어떤 이벤트의 하위...
  Arr.forEach((el) => {
      이부분에서 진행해야함.
  });
})

오늘의 사고력 문제... 

특정 배열에서 일치하는 부분이 있으면 그 배열 순서에서 일치하는 다른 배열변수에서 id값을 가져와 넣어줘야한다.

그런데, 일치하지 않으면 그냥 일반적인 변수로 넣어줘야 했다.

 

따로 따로는 쉬웠으나 합치는 부분이 너무나도 어려웠다.

 

오늘 어려웠던 이유....

하나의 if안에서 모든 것을 컨트롤하려고 했다.

 

이게 무진장 어려웠는데, 퇴근 직전에서 막상 만들고 이해를 못 했다가 작동되는 것만 확인하고

일단 퇴근하면서 생각해봤는데, 제대로 된게 맞더라.

// 요건.
// forEach문을 돌려 해당 내용과 일치하는 부분이 있으면 해당 내용만 리턴.
// 없을 경우 다른 변수를 할당.

// 이벤트 발생 부분에서
	let check = true; // default 값으로 true를 주어 이를 기본 작동하게 한다.
  Arr.forEach((el) => {
      if(el.key == anotherArr.key) {
      	다른 변수 = {...data, id: another.id}
        check = false;
        return;
      }
  });
  if(check) { // forEach에서 해당 부분이 없으면 return 작동이 되지 않으므로 그냥 여기서 들어간다.
   다른 변수 = data;
  }

여러 모로 너무 어렵다... 코딩 때려치고 싶다는 생각도 들고 남한테서 돈 벌기 힘들다는 생각을 하게된다. 

728x90