JavaScript 객체의 크기 결정
소개
JavaScript 객체의 메모리 사용량 추정 JavaScript 객체는 어려운 작업이 될 수 있습니다. 이 기사에서는 JavaScript 개체의 크기를 구하는 방법에 대한 최근 조사에서 영감을 받아 JavaScript에서 개체의 대략적인 크기를 결정하는 포괄적인 방법을 살펴보겠습니다.
문제 해결
Marks와 Student라는 두 가지 함수를 정의하고 새 Student 객체를 인스턴스화하는 다음 JavaScript 코드를 고려해 보세요.
function Marks() { this.maxMarks = 100; } function Student() { this.firstName = "firstName"; this.lastName = "lastName"; this.marks = new Marks(); } var stud = new Student();
객체 크기 추정
JavaScript에는 C의 sizeof() 연산자와 유사한 내장 함수가 없습니다. 그러나 스터드 개체의 크기를 추정하기 위한 사용자 정의 함수를 고안할 수 있습니다.
function roughSizeOfObject(object) { const objectList = []; const stack = [object]; let bytes = 0; while (stack.length) { const value = stack.pop(); switch (typeof value) { case 'boolean': bytes += 4; break; case 'string': bytes += value.length * 2; break; case 'number': bytes += 8; break; case 'object': if (!objectList.includes(value)) { objectList.push(value); for (const prop in value) { if (value.hasOwnProperty(prop)) { stack.push(value[prop]); } } } break; } } return bytes; }
이 함수는 기본 값의 크기(부울의 경우 4바이트, 부울의 경우 8바이트)를 고려하여 개체를 재귀적으로 탐색합니다. 숫자) 및 문자열 길이(바이트)(2를 곱함)입니다. 또한 무한 재귀를 방지하기 위해 개체 목록을 유지 관리합니다.
결론
이 함수를 사용하면 배열 및 사용자 정의 개체를 포함하여 특정 JavaScript 개체의 크기를 대략적으로 계산할 수 있습니다. . 이 방법은 특히 성능이 중요한 애플리케이션에서 메모리 사용량을 최적화하는 데 유용할 수 있습니다. 정확한 값보다는 추정치를 제공하지만 JavaScript에서 객체의 메모리 공간에 대한 귀중한 통찰력을 제공합니다.
위 내용은 메모리에 있는 JavaScript 개체의 대략적인 크기를 어떻게 확인할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!