-

자바스크립트 연산자(=== 와 ==의 차이) 본문

CS Language Note/Javascript

자바스크립트 연산자(=== 와 ==의 차이)

Boogallee 2020. 9. 2. 21:59

===== 연산자의 차이

자바스크립트의 변수는 모두 참조변수라는 것을 먼저 이해하고 있어야 한다.

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