Разница между страницами «Type (Lua)» и «Unpack (Lua)»

Материал из UoPilot
(Различия между страницами)
Перейти к навигации Перейти к поиску
 
 
Строка 1: Строка 1:
 
== Описание ==
 
== Описание ==
'''type''' - возвращает тип параметра в виде строки.
+
'''unpack''' - возвращает все значения массива или от одного индекса и до другого, если указано. Элементы разделены пробелом.
  
 
== Синтаксис ==
 
== Синтаксис ==
Привязка к окну: нет.
+
Привязка к окну: Нет.
<br>Работа со свернутым окном: да.
+
<br>Работа со свернутым окном: Да.
  type (<nowiki><var></nowiki>)
+
<br>Все параметры заключаются в скобки и разделяются запятыми.
 +
  unpack (<array> [, i [, j]])
 
Где:
 
Где:
<br>'''<nowiki><var></nowiki>''' - переменная.
+
<br>'''<array>''' - массив.
 +
<br>'''[, i [, j]]''' - необязательные параметры. Если указать вернёт значения от элемента i до j. Если j не указан, то от i до последнего.
  
 
== Примеры ==
 
== Примеры ==
 
  --lua
 
  --lua
  local a = 15            -- число (тип number)
+
  local arr = {"Один", "Два", "Три", "Четыре"}
local b = "UoPilot"     -- строка (тип string)
+
  log (unpack(arr))
local arr = {1, 2, 3}   -- массив (тип table)
 
local c = a == 15    -- если переменная 'a' равна 15 вернёт true, иначе false (тип boolean)
 
  log (type(a))
 
log (type(b))
 
log (type(arr))
 
log (type(c))
 
  
 
  --lua
 
  --lua
  local a = 12           -- переменная 'a' - число
+
  local arr = {"Один", "Два", "Три", "Четыре", "Пять"}
  log (type(a))
+
log (unpack(arr, 2, 4))  -- показать в логе со 2 по 4 элементы
  a = tostring(a)  -- теперь переменная 'a' - строка
+
 
  log (type(a))
+
--lua
 +
local arr = {"Один", "Два", "Три", "Четыре", "Пять", "Шесть"}
 +
log (unpack(arr, 3))  -- показать в логе элементы с 3 до последнего
 +
 
 +
--lua
 +
log ("clear") log ("mode compact")
 +
local arr = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15}}
 +
  -- вывод массива в лог
 +
  for i = 1, #arr do
 +
    log (unpack(arr[i]))
 +
end
 +
log ()
 +
   
 +
for i = 1, #arr do
 +
    log (unpack(arr[i], 3, 4))
 +
end
 +
 
 +
--lua
 +
log ("clear") log ("mode compact")
 +
local arr = {[1] = {1, 2, 3, 4, 5}, [2] = {nil}, [3] = {11, 12, 13, 14, 15}}
 +
   -- вывод массива в лог
 +
for i = 1, #arr do
 +
    log (unpack(arr[i]))
 +
end
 +
log ()
 +
 +
  for i = 1, #arr do
 +
    log (unpack(arr[i], 1, 3))
 +
end
 +
 
 +
--lua
 +
local arr = {"Один", "Два", "Три", "Четыре"}
 +
a, b, c, d = unpack(arr)
 +
log (a, b, c, d)
  
 
== Смотрите также ==
 
== Смотрите также ==
  
[[tonumber (Lua)]]
+
[[table.insert (Lua)]]
<br>[[tostring (Lua)]]
+
<br>[[table.remove (Lua)]]
 +
<br>[[table.concat (Lua)]]
 +
<br>[[table.sort (Lua)]]
 +
<br>[[table.maxn (Lua)]]

Текущая версия на 11:27, 28 августа 2019

Описание

unpack - возвращает все значения массива или от одного индекса и до другого, если указано. Элементы разделены пробелом.

Синтаксис

Привязка к окну: Нет.
Работа со свернутым окном: Да.
Все параметры заключаются в скобки и разделяются запятыми.

unpack (<array> [, i [, j]])

Где:
<array> - массив.
[, i [, j]] - необязательные параметры. Если указать вернёт значения от элемента i до j. Если j не указан, то от i до последнего.

Примеры

--lua
local arr = {"Один", "Два", "Три", "Четыре"}
log (unpack(arr))
--lua
local arr = {"Один", "Два", "Три", "Четыре", "Пять"}
log (unpack(arr, 2, 4))   -- показать в логе со 2 по 4 элементы 
--lua
local arr = {"Один", "Два", "Три", "Четыре", "Пять", "Шесть"}
log (unpack(arr, 3))   -- показать в логе элементы с 3 до последнего 
--lua
log ("clear") log ("mode compact")
local arr = {{1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15}}
 -- вывод массива в лог
for i = 1, #arr do
    log (unpack(arr[i]))
end
log ()

for i = 1, #arr do
    log (unpack(arr[i], 3, 4))
end
--lua
log ("clear") log ("mode compact")
local arr = {[1] = {1, 2, 3, 4, 5}, [2] = {nil}, [3] = {11, 12, 13, 14, 15}}
 -- вывод массива в лог
for i = 1, #arr do
    log (unpack(arr[i]))
end
log ()

for i = 1, #arr do
    log (unpack(arr[i], 1, 3))
end
--lua
local arr = {"Один", "Два", "Три", "Четыре"}
a, b, c, d = unpack(arr)
log (a, b, c, d)

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

table.insert (Lua)
table.remove (Lua)
table.concat (Lua)
table.sort (Lua)
table.maxn (Lua)