>  기사  >  웹 프론트엔드  >  JavaScript 개체에서 임의의 속성을 간결하게 선택하려면 어떻게 해야 합니까?

JavaScript 개체에서 임의의 속성을 간결하게 선택하려면 어떻게 해야 합니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-10-26 06:41:30664검색

How can I select a random property from a JavaScript object concisely?

JavaScript 객체에서 무작위 속성을 간결하게 선택

JavaScript에서 객체는 해시 테이블에 저장된 키-값 쌍입니다. 객체에서 특정 속성을 검색하려면 정확한 속성 키를 알아야 합니다. 그러나 때로는 개체에서 임의의 속성을 선택하는 것이 바람직할 수도 있습니다.

일반적인 접근 방식에는 개체의 속성을 반복하고 계산한 다음 해당 범위 내에서 임의의 정수를 생성하는 것이 포함됩니다. 이 접근 방식을 사용하면 객체를 한 번 반복하여 길이를 결정한 다음 다시 반복하여 해당 인덱스에서 무작위 속성을 찾습니다.

그러나 이 목표를 달성하기 위한 더 간결하고 빠른 방법이 있습니다.

<code class="javascript">var randomProperty = function (obj) {
    var keys = Object.keys(obj);
    return obj[keys[ keys.length * Math.random() << 0]];
};</code>

이 접근 방식은 객체의 모든 속성 키 배열을 반환하는 Object.keys() 메서드를 활용합니다. 이 배열의 길이에 1보다 작은 임의의 값을 곱함으로써(비트 이동 사용) 배열 내에서 임의의 인덱스를 얻습니다. 이 임의 인덱스를 사용하여 배열을 인덱싱하면 선택된 속성 키가 제공됩니다. 마지막으로 이 키를 사용하여 개체에 액세스하면 관련 속성 값을 검색합니다.

이 방법은 반복적 접근 방식보다 더 간결하고 종종 더 빠르게 수행되므로 JavaScript 개체에서 임의의 속성을 선택할 때 선호되는 선택입니다.

위 내용은 JavaScript 개체에서 임의의 속성을 간결하게 선택하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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