<JS> 객체(Object) 1

Sinjae Lee·2021년 5월 14일

자바스크립트는 객체 기반의 script 언어이다. 따라서 JS 안의 거의 모든 것은 객체라고 봐도 무방하다.

객체는 원시타입을 제외한 나머지 값들(배열, 함수, 정규표현식 등) 모두 객체이며, 참조에 의한 전달 (pass-by-refernce) 방식으로 전달된다.
(원시타입은 boolean /null /undefined /number /string /symbol 이 있다)

동등 비교연산자

일단 객체에 대한 예제 전에 비교연산자에 대해 잠깐 보고 가자.
'''
5==5
5=='5'
5==='5'
'''
자 여기서 false 인 녀석은 마지막이다.

== 는 '값' 만 비교해서 같으면 해당 값이 수이든 string이든 같은 값이라고 판단한다.
===는 '값' 과 '타입' 을 비교한다 따라서 숫자 5 와 string '5' 는 다르므로 마지막이 false가 되겠다

'''js
const Jay1 = { name: 'Jay'};
const Jay2 = { name: 'Jay'};
const Jay3 = Jay1;
'''
자 이랬을때
'''js
console.log(Jay1 == Jay2);
console.log(Jay1 === Jay2);
console.log(Jay1 === Jay3);
'''

이것들에 대한 정답은?

false
false
true 이다

일단 위에서 객체는 '참조'에 의한 전달 방식이라고 했다
Jay1 -> ref1 -> name:Jay1
Jay2 -> ref2 -> name:Jay2
Jay3 -> ref1
을 가르키므로 Jay1===Jay3 /// True
나머지는 false 가 되겠다

profile
Back-end developer

0개의 댓글