Airton Vancin Junior
Blog Plugins Projetos Sobre Contato Zero Downtime
Airton Vancin Junior
Blog Plugins Projetos Sobre Contato Zero Downtime

Instanciação de Variáveis JavaScript

Esse é um artigo feito como forma de estudo para o curso de BE Mean do WebSchool.io

11 de dez. de 2015 · 3 min de leitura

Hoisting

Hoisting é um comportamento do JavaScript de mover declarações para o topo de um escopo (o escopo global ou da função em que se encontra). Em JavaScript, funções e variáveis são hoisted (ou “levados ao topo”). Isso significa que você pode usar variável e função antes mesmo de tê-las declaradas.

Ex

sobrenome = "Vancin";
var sobrenome;

nome();
function nome() {
  return "Airton";
}
Publicidade

Closure

Uma closure é o escopo criado quando uma função é declarada que permite à função acessar e manipular variáveis externas a ela. Em outras palavras, clousers permitem quem uma função acesse todas as variáveis, assim como outras funções, que estão em escopo quando ela é declarada.

Como usar

var sobrenome = "Vancin"; // Declara variável em escopo global

function nomeCompleto() {
  // Declara função em escopo global
  return "Airton " + sobrenome;
}
nomeCompleto(); // Executa a função

Variável Global

Todas as variáveis ​​ou funções declaradas fora de uma função estarão disponíveis para todo o código JavaScript na página, se esse código é dentro de uma função ou de outra forma, nós chamamos isso de âmbito global. Veja o exemplo:

var sobrenome = "Vancin"; // Declara variável em escopo global

function nomeCompleto() {
  // Declara função em escopo global
  return "Airton " + sobrenome;
}
  • A variável sobrenome essa é uma variável global pois é criada no exterior de uma função, e porque é global, ela pode ser utilizado em qualquer lugar na página.
  • A função nomeCompleto() acessa a variável sobrenome para retornar o nome completo.

Variável por parâmetro

Parâmetros de função são semelhantes às variáveis, eles têm um âmbito local, e, portanto, só pode ser acessado de dentro da função.

function nomeCompleto(sobrenome) {
  // Declara função em escopo global
  return "Airton " + sobrenome;
}

nomeCompleto("Vancin"); // Chama a função passando uma string como parametro
  • Nesse caso a função espera que você passe um valor como parametro, se não passar nada ela retornara undefined.

Instanciação usando uma IIFE

IIFE significa uma “Função anônima auto-executável” ou “Função Imediatamente Executável”, quando usamos isso queremos criar um escopo no JavaScript para que as variáveis dentro dela não poluam o escopo global, evitando possíveis conflitos de variáveis ou funções com o mesmo nome.

Existem dois padrões para invovar funções imediatas

(function () {
  /* código */
})(); // Crockford recomenda esse
(function () {
  /* código */
})(); // Mas esse também funciona

Exemplo usando variável

var nomeCompleto = (function () {
  return "Airton Vancin";
})();

nomeCompleto; // Chama a variável que executa a função imediata que retorna o nome completo

Exemplo usando parâmetros

(function (x) {
  return x;
})(1); // Passando o valor 1 como parâmetro

Considerações

O uso dessas técnicas pode não apenas nos ajudar a reduzir a quantidade e a complexidade do script necessário para incluir funcionalidades avançadas em nossas páginas, como também nos permite realizar operações que simplesmente não seriam possíveis, ou seriam complexas demais para serem factíveis, sem elas.

Compartilhar:

Posts Relacionados

WordPress SSO with JumpCloud: SAML Setup From Both Sides

en

Connect WordPress to JumpCloud over SAML 2.0: the custom SAML app in the Admin Portal, the four values WordPress needs back, how users are matched and created, and the traps that make the first login fail.

WordPress SSO with Keycloak: OpenID Connect, Field by Field

en

Log in to WordPress with Keycloak over OpenID Connect: the client to create in Keycloak, which endpoint goes in which plugin field, why linking users by email can hand out an admin account, and how to map Keycloak roles to WordPress roles.

Nextcloud SSO with Keycloak: SAML Without the Lockout

en

Wiring Nextcloud to Keycloak over SAML: import the metadata instead of typing endpoints, map the UID to something permanent, and set the one toggle that stops you locking yourself out.

Comentários

Front End Zero Downtime

Garanta que suas aplicações Web estejam sempre disponíveis, sem interrupções, sem perda de receita.

Disponível por tempo limitado.

Airton Vancin

Desenvolvedor de software com mais de 15 anos de experiência, construindo produtos web modernos e escaláveis.

GitHub LinkedIn WordPress Email X (Twitter)

Mapa do Site

  • Home
  • Blog
  • Prévias
  • Sobre
  • Contato
  • Zero Downtime
Projetos
  • Declone
  • Lume IQ
  • Juros de Obra
  • Balancewise.io
  • Timberoad
  • Pablo Escobar Ipsum
Plugins WP
  • Video Destacado
  • Manage User Roles
  • Nudge SEO AI
  • SSO Connector for JumpCloud
  • Notria AI Suite

© 2026 Airton Vancin. Todos os direitos reservados.

Políticas de Privacidade