레퍼런스 › 함수 레퍼런스 › Functions

Functions.collections.keys

공개

호출 방법

Functions.collections.keys(array)

Functions.collections.keys(이)라는 이름의 의존성으로 기록한 뒤(자동 완성을 수락하면 이렇게 됩니다) 그 이름으로 호출하세요.

하는 일

테이블 키를 모아 Lua 작다 비교로 연결된 값에 따라 정렬합니다. 키 이름이 아니라 값을 정렬하며, 값이 같으면 키 순서는 보장되지 않습니다.

인수

이름유형하는 일
arraytable값끼리 비교할 수 있어야 하는 테이블.

반환값

1table연결된 값으로 정렬된 키의 밀집 배열.

버전

기본 제공 도우미는 모든 버전에 등록됩니다. 다른 점은 읽는 게임 API이며, API가 없으면 도우미는 대체 동작을 하거나 이유와 함께 nil을 반환합니다.

게임 API를 직접 읽지 않습니다.

애드온에서 호출하는 방식

  • 유닛 등급 (widget)
    class:SetList(addon.classifications, Functions.collections.keys(addon.classifications))
  • 전투 행동 기록 (widget)
    action:SetList(addon.actions, Functions.collections.keys(addon.actions))
  • 전투 행동 기록 시간 (widget)
    action:SetList(addon.actions, Functions.collections.keys(addon.actions))
  • 생물 유형 (widget)
    class:SetList(addon.creatures, Functions.collections.keys(addon.creatures))
  • 약화 효과 유형 있음 (widget)
    debufftype:SetList(addon.debufftypes, Functions.collections.keys(addon.debufftypes))
  • 확장 캐릭터 능력치 (widget)
    stat:SetList(ecs_state.stats, Functions.collections.keys(ecs_state.stats))
  • 확장 캐릭터 능력치 비율 (widget)
    stat:SetList(ecs_state.percentages, Functions.collections.keys(ecs_state.percentages))
  • 그룹 중 (widget)
    unit.configure=function() unit:SetList(units,Functions.collections.keys(units));unit:SetValue(value.unit or "player") end

외 9개: 인스턴스 (widget), 범위 내 생명력 (widget), 범위 내 생명력 비율 (widget), 범위 내 마나 (widget), 범위 내 마나 비율 (widget), 역할 (widget), 토템 있음 (widget), 토템 남은 시간 (widget), 지역 PvP (widget)

소스

Functions/collections.lua, 21번째 줄. 게임에서는 읽기 전용이며, 복제하면 편집 가능한 사본이 생깁니다.

Functions.collections.keys(array)
    local rv = {}
    for k,_ in pairs(array) do
        table.insert(rv, k)
    end
    -- Sort the keys
    table.sort(rv, function (lhs, rhs) return array[lhs] < array[rhs] end)
    return rv

함수 레퍼런스(으)로 돌아가기