Computer >> 컴퓨터 >  >> 프로그래밍 >> JavaScript

자바스크립트 '=' 연산자와 '==' 연산자의 핵심 차이점 완벽 정리

자바스크립트에서 '=' 연산자'==' 연산자는 기호가 비슷해 혼동하기 쉽지만, 그 용도는 완전히 다릅니다. 이 글에서는 두 연산자의 차이점과 실제 동작 방식을 예제와 함께 살펴보겠습니다.

'=' 연산자: 할당(Assignment)

'=' 연산자는 오른쪽의 값을 왼쪽 변수에 대입(할당)하는 연산자입니다. 예를 들어 x = 5라고 작성하면 숫자 5가 변수 x에 저장됩니다. 즉, 값을 비교하는 것이 아니라 값을 저장하는 역할을 합니다.

'==' 연산자: 동등 비교(Equality Comparison)

반면 '==' 연산자는 두 값이 서로 같은지를 비교하여 true 또는 false를 반환하는 비교 연산자입니다. 특히 '=='는 비교 전에 자동으로 타입 변환(형 변환)을 수행하기 때문에, 데이터 타입이 달라도 값이 같다면 true를 반환할 수 있다는 점에 유의해야 합니다.

예제 코드

<html>
<body>
<p id="equal"></p>
<script>
    var x = 5;
    var y = "6";
    document.write(x);
    document.getElementById("equal").innerHTML =
    (x == y);
</script>
</body>
</html>

실행 결과

false
5

결과 해석

위 예제에서 변수 x에는 '=' 연산자를 통해 숫자 5가 할당되었으며, document.write(x)를 통해 화면에 출력된 값 역시 5입니다. 이후 '==' 연산자로 x(숫자 5)와 y(문자열 "6")를 비교한 결과, 두 값이 서로 다르기 때문에 false가 반환됩니다.

추가 팁: '===' 연산자 활용하기

타입 변환 없이 값과 데이터 타입까지 엄격하게 비교하려면 '===' 연산자(일치 연산자)를 사용하는 것이 좋습니다. 실무에서는 '=='의 암묵적 형 변환으로 인해 발생할 수 있는 예기치 않은 버그를 방지하기 위해 '===' 사용이 권장됩니다.