Por que usar variáveis locais?
Parte da seção Fundamentals do Journey de Lua da Coddy — lição 85 de 90.
Prevenindo Conflitos de Nomes: O benefício mais importante das variáveis locais é que elas impedem que você sobrescreva acidentalmente outras variáveis com o mesmo nome. Quando você usa variáveis globais em todo o seu programa, é fácil reutilizar acidentalmente o nome de uma variável e alterar um valor que você não pretendia modificar.
score = 100 -- Variável global
-- Mais tarde no seu código...
score = 50 -- Ops! Você acabou de sobrescrever a pontuação originalCom variáveis locais, cada escopo tem suas próprias variáveis separadas, portanto não há risco de conflitos acidentais.
Folha de consulta
Variáveis locais evitam conflitos de nomes ao criar escopos separados, evitando a sobrescrita acidental de variáveis globais:
score = 100 -- Variável global
-- Mais tarde no seu código...
score = 50 -- Ops! Você acabou de sobrescrever a pontuação originalCom variáveis locais, cada escopo mantém suas próprias variáveis separadas, eliminando o risco de conflitos acidentais.
Experimente você mesmo
Esta lição não inclui um desafio de código.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentals
4Operadores 2 Relacionais e Lógicos
Operadores de IgualdadeOperadores RelacionaisO Operador 'and'O Operador 'or'O Operador 'not'Avaliação de Curto-CircuitoValores Truthy e FalsyRecapitulação - Lógica Simples7Lógica Condicional Básica
A instrução if-thenA instrução if-then-elseA instrução elseifRecapitulação - Baú do Tesouro2Variáveis e Tipos de Dados
O que é uma Variável?NúmerosStringsBooleanosO Valor 'nil'A Função type()Convenções de NomenclaturaRecapitulação - Perfil de Personagem5Saída Básica
Imprimindo LiteraisImprimindo VariáveisImprimindo Múltiplos ValoresCombinando Strings e VariáveisA Função tostring()EntradaCastRecapitulação - Relatório de StatusRecapitulação - Até 1208Fundamentos de Manipulação de Strings
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Revisão - Formatar Nome de Usuário11Tabelas 2: Estilo Dicionário
Pares Chave-ValorCriando Tabelas Estilo DicionárioAcessando - Notação de ColchetesAcessando com Notação de PontoAdicionando e Modificando ParesRemovendo Pares com nilRecapitulação - Propriedades de Itens14Escopo de Variáveis
Variáveis GlobaisVariáveis LocaisPor que usar variáveis locais?Escopo e BlocosRecapitulação - Desafio de Escopo3Operadores 1: Aritmética e Concatenação
Operadores AritméticosOperador de MóduloOperador de ExponenciaçãoConcatenação de StringsPrecedência de OperadoresRecapitulação - Cálculos Simples6Projeto: Exibição de Atributos do Personagem
Mensagem de Boas-vindasDeclarar Atributos do Personagem9Fundamentos de Funções
Declarando uma FunçãoChamando uma FunçãoFunções com ParâmetrosFunções com Múltiplos ParâmetrosA Instrução 'return'Recapitulação - Calculadora de Área