Array.filter를 활용해 검색창 만들기 응용

YOUNGJOO-YOON·2021년 4월 21일
0

react with webpack 5

목록 보기
11/37
post-custom-banner

TOC

  1. 검색기능 업그레이드

1. 검색기능 업그레이드

검색 기능에 추가 기능으로 id, name, gender를 검색할 수 있도록 변경했다.
그래도 아직 보완할 부분들이 있다 예를 들어 man을 입력하면 woman이 함께 나온다는 것..

이는 포함하는가? 만을 묻고 완전히 일치 하는가는 조건을 잡아주지 않았기 때문이다.

이는 차차 해결하는 것으로 한다.

...
  const filteredList = (users, input) => {
    return users.filter((user) => {
      if (input) {
        return (
          user.name.toLowerCase().includes(input.toLowerCase()) ||
          user.gender.toLowerCase().includes(input.toLowerCase()) ||
          user.id.toString().includes(input.toString())
        );
      } else {
        return user;
      }
    });
  };
  ...

filter에 or 연산을 사용해 범위를 더 넓게 잡아줄 수 있었다.
또한 key값이 숫자인 경우는 문자로 치환해 includes함수를 사용하는 것도 좋은 방법이다.

profile
이 블로그의 글은 제 생각을 정리한 글과 인터넷 어딘가에서 배운 것을 정리한 글입니다. 출처는 되도록 남기도록 하겠습니다. 수정 및 건의 오류 등이 있으면 언제든지 댓글 부탁드립니다.
post-custom-banner

0개의 댓글