Nova turma com conversação 5x por semana 🔥

Nova turma com conversação 5x por semana 🔥

O que é a função yield em JavaScript e como ela funciona?

A função yield em JavaScript é uma funcionalidade introduzida na versão ES6 da linguagem. Ela está relacionada ao conceito de iteradores e permite que uma função seja pausada e retome sua execução posteriormente, mantendo seu estado interno. Essa capacidade de pausar e retomar a execução de uma função é conhecida como “iteração por demanda”.

Como utilizar a função yield em JavaScript em diferentes cenários?

A função yield em JavaScript pode ser utilizada em diversos cenários, trazendo benefícios e facilitando o desenvolvimento de certas funcionalidades. A seguir, serão apresentados alguns exemplos de como utilizar a função yield em diferentes contextos:

1. Iteração customizada:

A função yield permite a criação de iterações personalizadas em objetos ou estruturas de dados. Ao declarar uma função geradora, podemos iterar sobre seus valores utilizando a palavra-chave “yield”. Isso nos dá controle total sobre a iteração, permitindo que retornemos valores de maneira específica.

2. Trabalhando com sequências infinitas:

Em alguns casos, precisamos trabalhar com sequências de valores que podem ser consideradas infinitas, como o conjunto dos números naturais ou os números primos. Utilizando a função yield, podemos criar uma função geradora que gera os próximos valores dessa sequência sob demanda.

3. Processamento assíncrono:

A função yield também pode ser utilizada em conjunto com a funcionalidade de Promises em JavaScript para lidar com operações assíncronas. Podemos criar uma função geradora que pausa a execução até que a Promise seja resolvida, retornando o resultado desejado.

Exemplos práticos de como usar a função yield em JavaScript

Agora que entendemos o conceito e as possibilidades da função yield em JavaScript, vamos analisar alguns exemplos práticos de como utilizá-la. Esses exemplos demonstram situações reais em que a função yield pode ser aplicada.

Exemplo 1: Criando uma sequência de números pares

function* gerarNumerosPares() {
  let numero = 0;
  while (true) {
    yield numero;
    numero += 2;
  }
}

const iterador = gerarNumerosPares();

console.log(iterador.next().value); // 0 
console.log(iterador.next().value); // 2
console.log(iterador.next().value); // 4

Exemplo 2: Trabalhando com operações assíncronas

function aguardar(ms) {
  return new Promise((resolve) => {
    setTimeout(() => resolve(), ms);
  });
}

function* tarefaAssincrona() {
  yield aguardar(1000);
  yield aguardar(2000);
  yield aguardar(3000);
}

const iterador = tarefaAssincrona();

(async () => {
  await iterador.next();
  console.log("Primeira etapa completa");
  
  await iterador.next();
  console.log("Segunda etapa completa");
  
  await iterador.next();
  console.log("Terceira etapa completa");
})();

Dicas e boas práticas ao utilizar a função yield em JavaScript

Aqui estão algumas dicas e boas práticas a serem consideradas ao utilizar a função yield em JavaScript:

  • Utilize a função yield com moderação, usando-a apenas quando necessário. O uso excessivo dessa funcionalidade pode tornar o código complexo e difícil de entender.
  • Documente seu código adequadamente, explicando o propósito e o comportamento da função geradora que utiliza a função yield.
  • Evite utilizar a função yield dentro de laços de repetição aninhados. Isso pode levar a comportamentos inesperados e dificuldades de controle da execução.
  • Tenha em mente que a função yield não é suportada em todos os contextos, como em funções assíncronas, por exemplo. Certifique-se de conhecer bem os limites e as possibilidades dessa funcionalidade.

Conclusão

A função yield é uma poderosa ferramenta presente na linguagem JavaScript, que permite criar iterações personalizadas, lidar com sequências infinitas e trabalhar com operações assíncronas. Saber utilizar essa função de maneira adequada pode melhorar a eficiência do código e facilitar o desenvolvimento de certas funcionalidades.

Neste artigo, exploramos o conceito de função yield, como ela funciona e como utilizá-la em diferentes cenários. Fornecemos exemplos práticos e dicas importantes para o seu uso correto. Esperamos que este conteúdo tenha sido útil para você entender a função yield em JavaScript e começar a aplicá-la em seus projetos.

A Awari é a melhor plataforma para aprender sobre programação no Brasil.

Aqui você encontra cursos com aulas ao vivo, mentorias individuais com os melhores profissionais do mercado e suporte de carreira personalizado para dar seu próximo passo profissional e aprender habilidades como Data Science, Data Analytics, Machine Learning e mais.

Já pensou em aprender de maneira individualizada com profissionais que atuam em empresas como Nubank, Amazon e Google? Clique aqui para se inscrever na Awari e começar a construir agora mesmo o próximo capítulo da sua carreira em dados.

🔥 Intensivão de inglês na Fluency!

Nome*
Ex.: João Santos
E-mail*
Ex.: email@dominio.com
Telefone*
somente números

Próximos conteúdos

🔥 Intensivão de inglês na Fluency!

Nome*
Ex.: João Santos
E-mail*
Ex.: email@dominio.com
Telefone*
somente números

🔥 Intensivão de inglês na Fluency!

Nome*
Ex.: João Santos
E-mail*
Ex.: email@dominio.com
Telefone*
somente números

🔥 Intensivão de inglês na Fluency!

Nome*
Ex.: João Santos
E-mail*
Ex.: email@dominio.com
Telefone*
somente números
inscreva-se

Entre para a próxima turma com bônus exclusivos

Faça parte da maior escola de idiomas do mundo com os professores mais amados da internet.

Curso completo do básico ao avançado
Aplicativo de memorização para lembrar de tudo que aprendeu
Aulas de conversação para destravar um novo idioma
Certificado reconhecido no mercado
Nome*
Ex.: João Santos
E-mail*
Ex.: email@dominio.com
Telefone*
somente números
Empresa
Ex.: Fluency Academy
Ao clicar no botão “Solicitar Proposta”, você concorda com os nossos Termos de Uso e Política de Privacidade.