-
카테고리
-
세부 분야
풀스택
-
해결 여부
미해결
===의미가 JAVA에서는 identity 연산자라서 그런건가요?
21.12.13 20:15 작성 조회수 449
1
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
google검색해보니
ture===1
#false
true ==1
#true
즉 추상적같음과 엄격한 같음 두가지 값이 같은지 비교하는거라고 하는데 잘 와닿지 않아서요, 설명된 자료 있을까요?
답변을 작성해보세요.
1
그랩
지식공유자2021.12.16
우선 java와 javascript는 다른 언어임을 먼저 알려드립니다.
=== 비교연산자는 값과 타입을 전부 비교하며 ==는 값만을 비교하는 연산자입니다.
위에 예시로 든 true는 실제로 1이라는 값을 가집니다.
boolean이라는 type을 가졌지만 1이라는 값도 가지고 있기에 true == 1을 하면 true가 나옵니다.
반면 true === 1을 하게 되면 true는 boolean type이고 1은 number 이기 때문에 type이 달라 false가 나옵니다.
보통 javascript에서 값을 비교할 때는 엄격한 비교를 하는 ===을 권장합니다 :)
답변 1