-
자바스크립트 연산자(=== 와 ==의 차이) 본문
=== 와 == 연산자의 차이
자바스크립트의 변수는 모두 참조변수라는 것을 먼저 이해하고 있어야 한다.
var x = 3;
var y = 3;
두 개의 변수 x,y 를 같은 값인 3을 넣어 주었다.
(사실 같은 값을 참조한다고 표현하는게 더 정확하다.)
x라는 변수가 3이라는 데이터를 참조, y 라는 변수가 3이라는 데이터를 참조한다.
console.log(x==y);
console.log(x===y);
각 연산자의 결과는 무엇인가? true true가 나오게 된다.
===는 주소가 같은지 비교하는 것으로 이해할 수 있다.
만약 c 언어라면 당연히 주소는 다를 것이다. 하지만 두 개의 변수는 같은 값을 "참조" 하고 있다.
따라서 참조하는 데이터가 같기에 true가 반환된다.
만약 데이터의 값은 같으나 다른 곳을 참조하도록 만들고 싶다면 아래와 같이 사용하면 된다.
var x = 3;
var y = new Number(3);
console.log(x===y);
이렇게 사용할 경우 결과는 false 가 된다.
(물론 == 는 true 를 반환 한다.)
'CS Language Note > Javascript' 카테고리의 다른 글
JSON 파서란? (0) | 2020.09.02 |
---|---|
eval 함수를 이용한 JSON 파싱 (0) | 2020.09.02 |
Javascript 데이터 객체와 JSON 생성 방법 (0) | 2020.09.02 |
자바스크립트 배열 (0) | 2020.09.02 |
Comments