개발자

javascript in 연산자 질문

2022년 09월 27일조회 241

javascript에서 1 in [0, 2] 는 왜 true 인가요? 평소에 파이썬으로 코딩테스트를 보다가 다른 언어도 한번 해볼겸 javascript로 코딩테스트를 연습중입니다. 파이썬에서는 1 in [0, 2] 인 경우 false를 return 하는데.. javascript에서는 true를 반환 하더라구요. 항상 써오던 연산자가 다르게 동작하다니..ㅜㅜ javascript in 연산자에 대해 좀 더 알기 쉽게 설명해주실 수 있나요?

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 1

엄홍재님의 프로필 사진

python에서 in 연산자는 in 뒤에 string이 와도 되고 list, tuple, dict등 이 올 수 있고 dict를 제외하고 해당 값이 있는지 반환해 줍니다. dict의 경우에는 해당 키가 있는지를 반환해 주고요! javascript에서는 in 뒤에 객체만 올 수 있고 앞의 값은 해당객체의 속성의 이름이나 배열의 인덱스가 올 수 있습니다. 앞의 속성이나 인덱스가 뒤의 객체에 존재하면 true 없으면 false를 반환합니다. 위의 예시인 1 in [0, 2] 인 경우, 배열 [0, 2]에 인덱스 1이 존재하므로 true를 반환하게 됩니다. ([0, 2][1]의 값은 2로 존재함) 추가로 1 in [1] 인 경우는 false가 나오게 됩니다. ([1][1]의 값은 undefined) 아래 링크의 문서를 참고해보세요! https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/in

profile picture

익명

작성자

2022년 10월 17일

자세한 설명 감사합니다!

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!