Coding

[Coding] ==와 === 차이

Anhwa 2023. 10. 12.
728x90

 

프로그래밍에는 비교 연산자 중 ==와 ===이 존재한다. 둘이 매우 비슷하게 생겼지만 사실은 다르다.

바로 본론으로 넘어가서 == 이 비교 연산자는 비교하려는 두 값의 자료형 상관없이 비교를 한다.

 

 

print(0 == false);

0은 타입을 제외하면 false와 같기 때문에 true가 출력되게 된다.

print(1 == '1');

위에 코드도 마찬가지로 true가 출력된다.

즉 == 이 비교 연산자는 엄격하지 않게 두 값을 비교한다고 볼 수 있다.

 

===
print(0 === false);

여기서는 int와 bool을 비교하기 때문에 위 코드의 값은 false가 출력된다.

이와 마찬가지로

print(1 === '1');

이 코드 또한 int와 String을 비교하는 것이기 때문에 false가 출력된다.

print('1' === '1');
print(1 === 1);
print(false === false);

이렇게 코드를 적게 된다면 출력은 3가지 경우 다 true가 출력되게 된다.

 


즉 정리하자면 '==' 연산자는 서로 다른 유형의 두 변수의 [값] 비교하는 것이고 '==='는 엄격한 비교를 하는 것으로 알려져 있다 ([값 & 자료형] 비교).

'Coding' 카테고리의 다른 글

[Coding] 프로그램 명명 규칙  (0) 2023.10.23
[Coding] 프로토타입(Prototype)  (0) 2023.08.22

댓글