Weekly-paper 3주차
by 담담이담- 자바스크립트에서 == 와 === 가 어떻게 다른지 설명해 주세요.
둘 다 같음 비교 연산에 해당된다.
1) ==와 !=
영어로 이야기하면 equal operator이다.
숫자형으로 형변환이 일어난 후에 같음 비교를 한다.
10 == 10 // true
10 == '10' // true
true == 1 // true
true == '1' // true
true == 'true' // false
null == undefined // true
2) ===와 !===
영어로 이야기하면 strict equal operator이다.
즉, 엄격하게 같음 비교를 한다는 것이다.
10 === 10 // true
10 === '10' // false
true === 1 // false
true === 'true' // false
null === undefined // false
=> 안전한 코드를 위해 2)보다는 1)을 추천한다.
- 자바스크립트에서 얕은 복사(Shallow Copy)와 깊은 복사(Deep Copy)에 대해 설명해 주세요.
1) 얕은 복사
데이터의 '주소 값'을 복사한다. -> 따라서 같은 주소값을 가지게 된다.
즉, 아예 같은 객체를 참조(가르키게)하게 된다는 뜻이다.
자바스크립트의 객체나 배열 같은 레퍼런스 자료형을 복사하면 얕은 복사가 발생한다.
2) 깊은 복사
데이터의 '실제 값'을 복사한다.
복사된 두 객체는 완전히 독립적인 메모리를 차지한다.
자바스크립트의 기본 자료형을 복사할 때는 깊은 복사가 발생한다.
'Weekly paper' 카테고리의 다른 글
7주차 : 리액트에서 배열 렌더링 시, key를 써야 하는 이유 (0) | 2023.10.23 |
---|---|
7주차 : 리액트에서의 Virtual DOM의 의미, 사용 이유 (0) | 2023.10.23 |
5주차 Weekly paper : HTTP 메소드 (1) | 2023.10.09 |
5주차 Weekly paper : 자바스크립트에서의 this (0) | 2023.10.09 |
4주차 Weekly paper : 브라우저의 동작방식 (0) | 2023.10.02 |
블로그의 정보
유명한 담벼락
담담이담