{} === {}는 거짓입니다... 😳무엇?? 이미지로 설명드릴게요 🖼
2312 단어 beginnersjavascript
const obj1 = {}
const obj2 = {}
obj1 === obj2 // false
무엇 ?????
이런 반응을 보인다면 이 기사를 계속 읽으십시오.
먼저 메모리 수명 주기에 대해 설명해야 합니다.
걱정하지 마세요. 이미지로 간단한 방법을 알려드리겠습니다.
const name = 'kaziu' // string
let isShame = true // boolean
let age = 101 // number
Javascript에서 문자열, 숫자, 부울, null, 정의되지 않음, 기호는 기본 유형을 호출합니다.
자바스크립트 기본형에서 이렇게 선언하면 데이터는 스택 인 메모리(stack in memory)라는 공간에 저장된다.
반면 객체는 함수, 배열을 포함하는 참조형이다(실제로 함수는 객체 중 하나이다)
const obj1 = {}
const obj2 = {}
개체를 선언할 때 컴퓨터는 해당 데이터 형식을 해당 변수에 직접 저장하지 않습니다. 힙에 있는 부동산 저장소
보시다시피 각 객체는 서로 다른 주소를 가지고 있습니다. 그리고 obj1 === obj2
이 주소를 비교하므로 false를 반환합니다.
결론
보통 참조라고 하는데 이해하기 쉽기 때문에 주소를 사용했습니다. 서로 다른 곳에 같은 모양의 집 두 채가 있다고 상상할 수 있습니다 🏠🏠
개인적으로 저는 프론트엔드 엔지니어로서 특히 React에서 useMemo를 사용할 때 처리합니다.
Reference
이 문제에 관하여({} === {}는 거짓입니다... 😳무엇?? 이미지로 설명드릴게요 🖼), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/kaziusan/-is-false-what-let-me-explain-it-with-image-58ef
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
const name = 'kaziu' // string
let isShame = true // boolean
let age = 101 // number
const obj1 = {}
const obj2 = {}
Reference
이 문제에 관하여({} === {}는 거짓입니다... 😳무엇?? 이미지로 설명드릴게요 🖼), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kaziusan/-is-false-what-let-me-explain-it-with-image-58ef텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)