속성 이름별로 JavaScript 개체 구성
JavaScript 개체를 속성 이름별로 알파벳순으로 정렬하는 것은 일반적인 요구 사항이지만 개체로서 문제가 됩니다. 열쇠 순서는 보장되지 않습니다. 이 문서에서는 이 문제를 다루고 개체를 특정 순서로 구성하기 위한 솔루션을 제공합니다.
오래된 ES5 솔루션:
ES5 사양에서는 개체 순서를 정의하지 않습니다. 키를 사용하는 경우 다음 방법을 사용할 수 있지만 미래 보장형으로 간주되지는 않습니다.
<code class="javascript">function sortObject(o) { var sorted = {}, key, a = []; for (key in o) { if (o.hasOwnProperty(key)) { a.push(key); } } a.sort(); for (key = 0; key < a.length; key++) { sorted[a[key]] = o[a[key]]; } return sorted; }
이 솔루션은 객체의 키를 반복하여 알파벳 순서로 정렬한 다음 정렬된 키를 사용하여 새 객체를 생성합니다. 및 해당 값.
ES6 호환 솔루션:
ES6이 도입되면서 이제 객체 키가 정의된 순서대로 유지됩니다. 따라서 정렬을 더 간결하게 수행할 수 있습니다.
<code class="javascript">const sortedObject = Object.fromEntries( Object.entries(originalObject).sort((a, b) => a[0].localeCompare(b[0])) );</code>
이 방법은 객체를 키-값 쌍의 배열로 변환하고 키를 기준으로 배열을 정렬한 다음 정렬된 배열을 다시 객체로 변환합니다. using Object.fromEntries().
결론:
ES5의 객체 키 순서는 정의되지 않았지만 제공된 솔루션을 사용하여 속성 이름별로 객체를 정렬할 수 있습니다. . ES6 이상에서는 객체 키 순서가 보장되어 정렬 프로세스가 더욱 간단해졌습니다.
위 내용은 속성 이름을 기준으로 JavaScript 개체를 정렬하는 방법: ES5 및 ES6 접근 방식의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!