RU/PairsByKeys: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
m (Alex7202 moved page RU/pairsByKeys to RU/PairsByKeys)
No edit summary
Line 16: Line 16:
<section name="Для сервера и клиента" class="both" show="true">
<section name="Для сервера и клиента" class="both" show="true">
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function pairsByKeys (t)
function pairsByKeys(t)
local a = {}
    local a = {}
for n in pairs(t) do table.insert(a, n) end
    for n in pairs(t) do
table.sort(a, f)
        table.insert(a, n)
local i = 0
    end
local iter = function ()
    table.sort(a, f)
i = i + 1
    local i = 0
if a[i] == nil then  
    local iter = function()
return nil
        i = i + 1
else  
        if a[i] == nil then
return a[i], t[a[i]]
            return nil
end
        else
end
            return a[i], t[a[i]]
return iter
        end
    end
    return iter
end
end
</syntaxhighlight>
</syntaxhighlight>
Line 38: Line 40:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
local t = {
local t = {
  ["LS0911ZO"] = {},
    ["LS0911ZO"] = {},
  ["LS00P3A2"] = {},
    ["LS00P3A2"] = {},
  ["LS00P3Z9"] = {},
    ["LS00P3Z9"] = {}
}
}


for num, v in pairsByKeys (t) do
for num, v in pairsByKeys(t) do
  print (num)
    print(num)
end
end


-- Выведет
-- ouput
-- LS00P3A2
-- LS00P3A2
-- LS00P3Z9
-- LS00P3Z9

Revision as of 22:12, 12 December 2020

Эта функция сортирует pairs таблицу.

Синтаксис

table pairsByKeys(tbl)

Аргументы

  • tbl: Таблица которую надо отсортировать.

Возврат

Возвращает отсортированную таблицу.

Код

Click to collapse [-]
Для сервера и клиента
function pairsByKeys(t)
    local a = {}
    for n in pairs(t) do
        table.insert(a, n)
    end
    table.sort(a, f)
    local i = 0
    local iter = function()
        i = i + 1
        if a[i] == nil then
            return nil
        else
            return a[i], t[a[i]]
        end
    end
    return iter
end

Пример

Click to collapse [-]
Для сервера и клиента
local t = {
    ["LS0911ZO"] = {},
    ["LS00P3A2"] = {},
    ["LS00P3Z9"] = {}
}

for num, v in pairsByKeys(t) do
    print(num)
end

-- ouput
-- LS00P3A2
-- LS00P3Z9
-- LS0911ZO

Автор: Alex7202

Смотрите также

Функции таблиц

  • pairsByKeys » Эта функция сортирует pairs таблицы.

ACL фунции

  • aclGroupClone » Эта функция создает копию группы с другим названием с/буз ACL'ов и/или объектов.

События

  • isEventHandlerAdded » Эта функция проверяет, создано событие или нет.

Функции машины

  • getVehicleRPM » Эта функция получает кол-во оборотов машины.