Função para Adicionar uma Tarefa
Parte da seção Introdução ao Luau do Journey de Lua da Coddy — lição 46 de 73.
Desafio
FácilSeu editor já contém o tipo Task e o array tasks da lição anterior.
Crie uma function chamada addTask que aceita dois parâmetros:
listdo tipo{Task}titledo tipostring
A function deve:
- construir um novo
Taskcujoidseja#list + 1, cujotitleseja o título fornecido e cuja flagdonesejafalse - inseri-lo em
listcomtable.insert - retornar o novo
task(tipo de retornoTask)
Em seguida, chame addTask(tasks, "Review the code"), armazene o resultado em uma variável chamada added e exiba via print, cada um em sua própria linha:
- o número de
tasksagora emtasks added.idadded.titleadded.done
Experimente você mesmo
-- A forma que toda tarefa no gerenciador deve seguir
type Task = {
id: number,
title: string,
done: boolean,
}
-- A lista de tarefas: um array tipado de formas Task
local tasks: {Task} = {
{id = 1, title = "Learn Luau types", done = false},
{id = 2, title = "Build a task manager", done = false},
{id = 3, title = "Write tests", done = true},
}
-- Escreva o código aqui
-- 1) defina addTask(list: {Task}, title: string): Task
-- 2) call it with tasks and "Review the code", store the result in `added`
-- 3) imprima #tasks, depois added.id, added.title e added.done
Todas as lições de Introdução ao Luau
1Começando com o Luau
O que é Luau?Por que usar Luau?Seu primeiro código em LuauVerificação de tipos e modos de erroRecapitulando: Introdução ao Luau4Trabalhando com Funções
Tipando Parâmetros e Valores de RetornoTipando Funções AnônimasFunções que Não Retornam NadaParâmetros OpcionaisValores Padrão para ParâmetrosFunções VariádicasDefinindo Tipos de FunçõesRecapitulação: Funções Tipadas7Projeto: Gerenciador de Tarefas Tipado
Projeto: O Formato da TarefaFunção para Adicionar uma Tarefa2Tipos Fundamentais
Tipos Básicos: num, str, boolO Tipo 'any': Escape HatchO Tipo 'unknown'Tipos Nil e OpcionaisInferência de Tipos na PráticaAnotações Explícitas de TiposReciclagem: Prática de Tipos Fundamentais5Aliases, Uniões, Interseções
Aliases de Tipos para PrimitivosTipos de UniãoTrabalhando com Tipos de UniãoTipos LiteraisTipos de InterseçãoCombinando Aliases de TiposRecapitulando: Combinações Avançadas de Tipos3Tabelas Tipadas: Arrays e Maps
Arrays TipadosAdicionando e Lendo ElementosO que é um Tipo Map?Declarando e Acessando MapsIterando Sobre TabelasTabelas de Formato MistoArrays Tipados Multidimensionaistable.unpack e VarargsRecapitulando: Arrays e Maps