>웹 프론트엔드 >JS 튜토리얼 >JavaScript의 기본 데이터 유형과 참조 유형의 차이점 분석

JavaScript의 기본 데이터 유형과 참조 유형의 차이점 분석

不言
不言원래의
2018-09-14 15:55:262561검색

이 글은 JavaScript의 기본 데이터 유형과 참조 유형의 차이점을 분석한 것입니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

머리말

JS에는 6가지 유형만 있습니다. 그 중 5가지 기본 데이터 유형이 있습니다: 문자열, 숫자, null, 정의되지 않음 객체는 하나의 참조 유형입니다. JS에서는 5가지 기본 데이터 유형을 제외한 모든 것이 객체입니다.

Text

두 가지 비교 예

기본 데이터 유형
var a = 100;
var b = a;
a++

console.log(a)//101
console.log(b)//100
참조 유형(객체)
var obj1 = new object();
var obj2 = new object();
    obj1.age = 18;
    obj2 = obj1;
    obj1.age++

console.log(obj1.age)//19
console.log(obj2.age)//19

  위의 두 예에서는 값이 변경된 것을 볼 수 있으며, 기본 데이터 유형이 할당되어 변경되지 않습니다. 그에 따라 참조된 값도 변경되는데, 왜 그럴까요? 실제로는 매우 간단하며 한 문장으로 요약할 수 있습니다. 기본 데이터 유형은 값을 저장하고 참조 유형은 주소를 저장하기 때문입니다.

설명 예시

  새 변수가 생성되면 스택에 저장됩니다. 객체인 경우 영역이 다른 더 큰 힙으로 나뉘어 스택의 주소에 저장됩니다. 더미.

기본 데이터 유형

JavaScript의 기본 데이터 유형과 참조 유형의 차이점 분석

위 그림과 같이 기본 데이터 유형은 a가 변경되면 b는 a의 값과만 같기 때문에 스택에 직접 값을 저장합니다. , 그리고 a 그것은 중요하지 않습니다.

참조 유형(객체)

JavaScript의 기본 데이터 유형과 참조 유형의 차이점 분석

  obj1과 obj2에 저장되는 것은 주소입니다. Obj2는 obj1의 값과 동일하지 않지만 힙에 저장된 obj1의 주소와 동일하므로 내용이 주소가 변경되면 obj2의 내용도 변경됩니다. 새 개체가 생성되는 한 개체의 속성, 메서드 등을 저장하기 위해 힙에 새 영역이 열립니다.

관련 추천:

JavaScript 기본 유형 및 참조 유형을 저와 함께 배워보세요_javascript 기술

JavaScript 기본 유형 및 참조 유형에 대한 간략한 분석_기본 지식

위 내용은 JavaScript의 기본 데이터 유형과 참조 유형의 차이점 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.