"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > JavaScript 개체에서 무작위 속성을 효율적으로 선택하는 방법은 무엇입니까?

JavaScript 개체에서 무작위 속성을 효율적으로 선택하는 방법은 무엇입니까?

2024-11-06에 게시됨
검색:104

How to Efficiently Select a Random Property from a JavaScript Object?

JavaScript 객체에서 임의의 속성 선택

JavaScript 객체에서 임의의 속성을 가져오는 것은 다양한 코딩에서 발생할 수 있는 기본 작업입니다. 시나리오. 다음과 같은 키-값 쌍을 포함하는 객체를 생각해 보세요:

{cat: 'meow', dog: 'woof', snake: 'hiss'}

전통적으로 이 작업은 다음과 같을 수 있습니다. 개체의 속성을 반복하고 무작위로 하나를 선택한 다음 해당 값을 검색하는 긴 루프를 통해 수행됩니다. 그러나 이 접근 방식은 장황하고 계산적으로 비효율적일 수 있습니다.

최적화된 솔루션

객체에서 무작위 속성을 선택하기 위한 보다 간결하고 효율적인 솔루션은 다음과 같이 제공됩니다. 다음 코드:

var randomProperty = function (obj) {
    var keys = Object.keys(obj);
    return obj[keys[ keys.length * Math.random() << 0]];
};

이 코드는 다음 단계를 사용합니다.

  1. Object.keys()를 사용하여 객체의 모든 속성 키를 검색하여 키 배열을 생성합니다.
  2. Math.random()을 사용하여 배열 인덱스 범위 내에서 임의 인덱스를 생성합니다.
  3. 대괄호 표기 연산자 [ ]를 사용하여 계산된 인덱스의 속성에 액세스합니다.

이 솔루션 루프가 필요하지 않고 무작위 속성을 직접 가져오므로 간결하고 계산 속도가 빨라집니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3