RU/PairsByKeys: Difference between revisions
Jump to navigation
Jump to search
m (Alex7202 moved page RU/pairsByKeys to RU/PairsByKeys) |
Dutchman101 (talk | contribs) (Mentioning author names on script examples isn't adopted practise on the MTA wiki, thanks for understanding) |
||
(One intermediate revision by the same user not shown) | |||
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 = {} | |||
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 | end | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 38: | Line 40: | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
local t = { | local t = { | ||
["LS0911ZO"] = {}, | |||
["LS00P3A2"] = {}, | |||
["LS00P3Z9"] = {} | |||
} | } | ||
for num, v in pairsByKeys (t) do | for num, v in pairsByKeys(t) do | ||
print(num) | |||
end | end | ||
-- | -- ouput | ||
-- LS00P3A2 | -- LS00P3A2 | ||
-- LS00P3Z9 | -- LS00P3Z9 | ||
Line 54: | Line 56: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</section> | </section> | ||
==Смотрите также== | ==Смотрите также== |
Latest 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
Смотрите также
Функции таблиц
- pairsByKeys » Эта функция сортирует pairs таблицы.
ACL фунции
- aclGroupClone » Эта функция создает копию группы с другим названием с/буз ACL'ов и/или объектов.
События
- isEventHandlerAdded » Эта функция проверяет, создано событие или нет.
Функции машины
- getVehicleRPM » Эта функция получает кол-во оборотов машины.