for문에서 특정한 값만 뽑아서 쓰려고 할 때,
일일이 if-elseif 구조로 하는 것이 싫어서
if문 하나에 ||를 넣는 방식으로 한다.
근데, 그것도 일일이 비교 구문을 넣어야해서
마음에 안든다.
(한 두개면 모르겠는데, 엄청 많으면 어쩔?)
if(i == 1 || 2 || 5) {...}와 같이 할 수는 없을까?
![](https://blog.kakaocdn.net/dn/bufOCo/btskgq6u7w6/u8thfkoAN3TwKkuMdaqBnk/img.png)
돌려보니 이렇게 나온다.
연산자 우선순위에 따르면,
비교연산자(==)가 논리연산자or(||)보다
우선순위가 높기 때문에
a == 1에서 비교가 끝나고,
이후 || 2 || 5로 가는데
0이외의 정수값은 if문에서 true로 인식한다.
|| 특성상, 하나라도 true이면,
뭐가 들어가도 true가 되므로
결국 1,2,5를 골라내지 못하고
모든 값을 출력해버리는 것이다.
for in 으로는 가능할까?
in연산자는 배열의 key값을 검사하는거라서
1, 2, 5라는 값에 대해서는 처리하지 못한다.
그냥 구글에 정공법으로
if문 조건 여러개 최소화로 검색을 해보니
includes() 함수라는 것이 있었다.
배열로 대충 어떻게 하면 되지 않을까 했는데
includes를 쓰면 되겠구만...
[ 참고 ]
[자바스크립트 / Vanilla JS] if(조건문) 줄이기
필자가 지금 현 상황에서 코드리팩토링의 초점을 맞추고 있는 부분은 바로 "if(조건문)" 최소화이다 사실 완전 초보중에 초보일 때는 if문을 많이 써도 그냥 보기 편하니까 가독성이 좋은 코드라
growing-jiwoo.tistory.com
[Javascript]if, else 문 최소화하기
Javascript를 이용하여 개발을 하다보면 if, else문이 많아짐에 따라 가독성을 상당히 해치는 코드를 종종 볼 수 있습니다. 특히나 프론트 UI에서 조건에 따라 렌더링 및 데이터를 보여주는 로직이 존
leffept.tistory.com
[Javascript] 연산자 우선순위
연산자들은 한 명령에서 쓰일 때, 서로간에 우선순위를 가지고 연산됩니다. 수학 연산처럼 괄호가 가장 높은 우선 순위를 갖고, 증감, 산술, 비교, 논리, 대입, 비트 순서로 우선순위를 갖습니다.
velog.io
📚 자바스크립트 in 연산자 활용 정리
프로그래밍 언어에서의 in 연산자 파이썬 프로그래밍을 하다가 자바스크립트 프로그래밍을 하다 보면 은근히 햇깔리는 부분이 바로 in 연산자 사용처이다. 예를들어 파이썬의 in 연산자는 멤버
inpa.tistory.com
댓글