table
*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.
Esta biblioteca proporciona funciones genéricas para la manipulación de tablas/matrices, proporcionando todas sus funciones dentro de la variable global table.La mayoría de las funciones en la biblioteca table asumen que la tabla representa un array o una lista.Para estas funciones, la "longitud" de una tabla significa el resultado del operador de longitud.
Resumen
Funciones
Establece todas las claves en la tabla dada a nil .
Devuelve una copia superficial de la tabla proporcionada.
Devuelve el rango dado de elementos de tabla como una cadena en la que cada elemento se separa por el separador dado.
Devuelve una nueva tabla poblada con muchas instancias del valor especificado.
Devuelve el índice de la primera ocurrencia de needle dentro de haystack comenzando por init .
Hace que la tabla dada sea solo de lectura.
Inserta el valor proporcionado en la posición objetivo del matriz/lista.
Aplica el valor proporcionado al final del matriz/lista.
Devuelve true si la tabla dada está congelada y false si no está congelada.
Devuelve la clave numérica máxima de la tabla proporcionada, o cero si la tabla no tiene claves numéricas.
Copia el rango especificado de elementos de una tabla a otra.
Devuelve una nueva tabla que contiene los valores proporcionados.
Elimina el elemento especificado de la matriz/lista, desplazando elementos posteriores para llenar el espacio vacío si es posible.
Ordena los elementos de la tabla usando la función de comparación proporcionada o el operador <.
Devuelve todos los elementos de la lista dada como un tupla.
Funciones
clear
Establece el valor para todas las claves dentro de la tabla dada a nil .Esto hace que el operador # devuelva 0 para la tabla dada.Se mantiene la capacidad asignada de la parte del array de la tabla, lo que permite un uso eficiente del espacio.
local grades = {95, 82, 71, 92, 100, 60}print(grades[4], #grades) --> 92, 6table.clear(grades)print(grades[4], #grades) --> nil, 0-- Si las calificaciones se llenan nuevamente con el mismo número de entradas,-- no producirseun potencialmente costoso recorte de matriz-- because the capacity was maintained by table.clear.
Esta función no elimina/destruye la tabla proporcionada a ella. Esta función está destinada a ser utilizada específicamente para tablas que se reutilizarán.
Parámetros
La tabla cuyas claves se borrarán.
Devuelve
concat
Dado un array donde todos los elementos son cadenas o números, devuelve la cadena t[i] ... sep ... t[i+1] ... sep ... t[j] .El valor predeterminado para sep es una cadena vacía, el predeterminado para i es 1, y el predeterminado para j es #t.Si i es mayor que j , devuelve la cadena vacía.
Parámetros
Devuelve
create
Crea una tabla con la porción de array asignada al elemento dado, opcionalmente llena con el dado .
local t = table.create(3, "Roblox")print(table.concat(t)) --> RobloxRobloxRoblox
Si está insertando en tablas grandes similares a tablas y está seguro de un límite superior razonable para el número de elementos, se recomienda usar esta función para inicializar la tabla.Esto garantiza que la parte del array de la tabla de su memoria sea suficientemente grande, ya que cambiarla puede ser costosa.Para cantidades pequeñas, esto no es normalmente perceptible.
Parámetros
Devuelve
find
Dentro de la tabla parecida a un array dada haystack, encuentra la primera ocurrencia de valor needle, comenzando por el índice init o desde el principio si no se proporciona.Si el valor no se encuentra, se devuelve nil .
Se realiza un algoritmo de búsqueda lineal.
local t = {"a", "b", "c", "d", "e"}print(table.find(t, "d")) --> 4print(table.find(t, "z")) --> nil, porque z no está en la tablaprint(table.find(t, "b", 3)) --> nil, because b appears before index 3
Devuelve
freeze
Esta función hace que la tabla dada sea solo de lectura, efectivamente "congelándola" en su estado actual. Al intentar modificar una tabla congelada se produce un error.
Este efecto de congelación es superficial, lo que significa que puedes escribir en una tabla dentro de una tabla congelada.Para congelar profundamente una tabla, llame a esta función recursivamente en todas las tablas descendientes.
Parámetros
La tabla para ser congelada.
Devuelve
La mesa congelada.
insert
Aplica el valor proporcionado al final del matriz/lista.
Parámetros
La tabla a la que se está añadiendo.
El valor que se añadirá a la tabla.
Devuelve
isfrozen
Esta función devuelve true si la tabla dada está congelada y false si no está congelada. Puedes congelar tablas usando table.freeze().
Parámetros
La tabla para verificar, comprobar.
Devuelve
Si la tabla está congelada desde table.freeze().
move
Copia elementos en la tabla src de src[a] hasta src[b] en la tabla dst comenzando en el índice t .Equivalente a la declaración de asignación dst[t], ..., dst[t + (b - a)] = src[a], ..., src[b] .
El predeterminado para dst es src . La gama de destino puede superponerse con la gama de origen.
Devuelve dst por conveniencia.
Parámetros
Devuelve
dst , para conveniencia.
pack
Devuelve una nueva tabla con todos los argumentos almacenados en las claves 1, 2, etc.y con un campo "n" con el número total de argumentos.Tenga en cuenta que la tabla resultante puede no ser una secuencia.
local t = table.pack(1, 2, 3)print(table.concat(t, ", ")) --> 1, 2, 3
Parámetros
Devuelve
remove
Elimina del array el elemento en la posición pos, devolviendo el valor del elemento eliminado.Cuando pos es un entero entre 1 y #t, cambia los elementos t[pos+1], t[pos+2], ..., t[#t] y elimina el elemento t[#t].Si el parámetro pos no se proporciona, pos se predetermina la longitud de la tabla al eliminar el último elemento.
Parámetros
Devuelve
sort
Ordena los elementos del array t en un orden dado, de t[1] a t[#t] .Si se da comp entonces debe ser una función que recibe dos elementos y devuelve verdadero cuando el primer elemento debe venir antes del segundo en el orden final.
Se lanza el error invalid order function for sorting si tanto comp(a, b) y comp(b, a) devuelven true .
Si no se da comp, se usa el operador estándar Luau < en su lugar.
Parámetros
Devuelve
unpack
Devuelve los elementos de la lista dada. Por defecto, i es 1 y j es la longitud de list .
Tenga en cuenta que esta misma funcionalidad también es proporcionada por la función global unpack() .