일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 자료구조 #알고리즘
- 페이스북유니버시티 #마케팅교육 #마케팅캠프
- vp #vc #did #신원인증 #블록체인
- html #js #parsing
- #경제상식 #화폐 #금융 #화폐금융론 #경제학 #경제기본 #경제지식 #경제근육 #투자지식 #경제공부 #경제학전공 #금융이란 #화폐란 #금융시장 #금융시장역할 #화폐역할 #화폐역기능 #금융역기능 #
- 블록체인 #layer2 #레이어2 #이더리움스케일링
- 미쉬킨의화폐와금융 #미쉬킨 #화폐금융론 #화폐와금융 #경제학 #교양 #경제지식 #경제공부
- #국제채권시장 #유로본드 #유로커런시 #유로달러 #외국채 #금융중개기관 #간접금융 #거래비용#다우존스공업평균지수 #나스닥종합지수 #FTSE100 #DAX #CAC40 #straittimes #항생지수 #거래비용 #유동성 #위
Archives
- Today
- Total
평행우주 : world 1
[JS] const 에 object를 선언하는 경우 본문
const 값이 바뀌는 경우가 생겨, 그 이유를 탐구했다
const에 object를 선언 했을 때, 결과 값이 바뀌는 경우가 발생하는 이유
이를 이해하기 위해서는 '변수가 무엇을 담는 지'에 대한 이해가 필요하다.
변수에 할당되는 값은 primitive 와 object로 구분된다.
primitive 값( boolean, null, undefined, number, string)은 데이터 자체가 변수에 담겨 있어
데이터 자체가 복사되어서 들어오지만,
object 는 이 object를 가리키고 있는 주소(reference)가 들어있기 때문에
그 주소만 복사 되어서 들어온다
따라서 변수 const에 object를 할당하는 경우 항상 같은 reference를 찾아 출력이 될 것이고,
reference 자체는 변화가 없겠지만, reference내의 값이 달라지면 결국 다른 결과 값이 출력된다.
Object equality by reference
const worlds1 = {name: 'love'};
const worlds2 = {name: 'love'};
const worlds3 = worlds1
console.log(worlds1 == worlds2); // case1 : F
console.log(worlds1 === worlds2); // case2 : F
console.log(worlds1 === worlds3); // case3 : T
worlds1과 worlds2의 할당된 값의 문자가 같아 case1이 TRUE라고 착각할 수 있다.
기억해야할 건!
변수가 object 를 담을 때는 !
그 안의 값을 담는 것이 아닌 reference 를 담는다는 것!
'텃밭 2 : FE > JavaScript' 카테고리의 다른 글
[용어정리] 값, 문, 표현식에 대하여 (0) | 2022.01.08 |
---|---|
[JS] 변수 hoisting과 값의 할당 (0) | 2022.01.08 |
[JS] DOM으로 HTML 조작하기 (CRUD+A) (0) | 2022.01.05 |
[JS] DOM 기초 이해하기 (0) | 2022.01.05 |
[JS] Vanila JS 엄격하게 사용하는 방법 (0) | 2021.12.29 |
Comments