728x90
Array.every()란?
Array.forEach()와 다르게 loop를 돌다가 중간에 멈출 수 있는 아주 좋은 함수이다. 그래서 Array.forEach()를 사용할 때는 어떤 일이 일어나도 0번부터 N번까지 돌아야 할 때 사용하고, Array.map()은 마찬가지로 어떤 일이 일어나도 0번부터 N번까지 돌지만, 값에 변형을 줘야 할 때 사용한다. 그리고 이 Array.every() 어떤 일이 발생하면 loop를 멈출 필요가 있을 때 사용한다. 아래 예제를 참고하자.
Array.every() 사용법
아래 소스를 보면, input을 통해 값을 받고, 그 값이 Array에 존재하는지를 확인한다. every 함수 안에서 true를 리턴하면 loop를 계속 진행하고, false를 리턴하면 리턴한 시점에서 멈춘다. 그리고 Array.every() 함수는 내부 함수를 통해 전달 받은 리턴값을 다시 리턴해주기 때문에 아래 소스처럼 Array.every()를 if로 감싸서 값을 찾았으면 찾았을 때에 대한 작업, 못 찾으면 못 찾았을 때의 작업을 수행할 수 있게 해준다.
결론
당연한 말이지만 loop문은 최대한 덜 돌게 하는 것이 좋다. 일반 for문이나 forEach를 통해 매번 끝까지 돌리지 말고 every를 사용해서 필요한 만큼만 돌리자.
반응형
'Development > Javascript' 카테고리의 다른 글
[Angular] Angular2 Component 사이트들 (0) | 2017.07.14 |
---|---|
[Javascript] JSON.parse() 사용 방법 feat. Object.assign (0) | 2017.05.27 |
[Angular] Typescript로 다른 Router-Outlet의 화면 변경하기 (0) | 2017.05.23 |
[Webpack] Bootstrap tooltips require Tether (0) | 2017.03.28 |
Promise를 이용한 이미지 로딩 제어 (0) | 2016.09.22 |