나는 JavaScript가 내부적으로 null
값을 저장하는 방법을 항상 궁금해했다. null
은 다른 값과 다릅니다. 범위의 변수가 일종의 구조 배열에 저장되고 각 구조는 변수에 상응한다고 상상해 봅니다. 이 구조체에는 "null"이라는 부울 속성이 있습니다.JavaScript는 내부적으로 null 값을 어떻게 저장합니까?
나 자신이 V8 소스 코드에서 찾아 것이지만, 꽤
나는 Google에서 아무것도 찾을 수 없습니다. 대부분의 결과는 같은 질문에 관련이 있었다 "어떻게에 C++ 코드 :(에서 길을 잃었하고 있어요 변수가 정의되어 있지 않거나 null인지 판단하십시오. "또는 이와 유사합니다.
아마도 인터프리터에 따라 다르 겠지만, 나는 그것이 단순히 0과 다른 점을 알면 놀랄 것입니다. 그것은 중요한 세부 사항이 아닙니다. – Pointy
null, undefined, false, 0 등 여러 "위조 된"값이 있음을 기억하십시오. 각 변수에 값이 널 (null)인지, 정의되지 않은지, 숫자인지 여부를 나타내는 "type"필드가 있습니다 부울, 객체 등 – cdhowie
@Pointy 확실히, 그것은 인터프리터에 달려 있습니다. null 값을 0으로 저장한다면'(null === 0)'이'false'를 반환하는 이유는 무엇입니까? –