Fundamentos de JavaScript: Callbacks, Objetos e Execução

O JavaScript funciona de duas maneiras: síncrona e assíncrona.

O código síncrono é executado linha por linha. O motor finaliza uma tarefa antes de iniciar a próxima. Isso impede a execução da tarefa seguinte.

O código assíncrono permite que as tarefas sejam executadas de forma independente. Você inicia uma tarefa e passa para a próxima enquanto aguarda. Isso melhora o desempenho em aplicações web.

Conceitos assíncronos fundamentais: • Callbacks: Funções passadas para outras funções para serem executadas posteriormente. • Promises: Objetos que representam o resultado de uma operação. • Async/Await: Sintaxe moderna para tornar o código assíncrono fácil de ler. • Event Loop: O sistema que gerencia a execução de tarefas.

Entendendo Processos e Threads

Um processo é um programa em execução. • Processos são isolados. • Eles não compartilham memória. • Um processo pode criar processos filhos. • Eles levam mais tempo para serem encerrados.

Uma thread é um segmento de um processo. • Um processo pode ter várias threads. • Threads compartilham memória. • Elas levam menos tempo para serem encerradas.

O que é uma Função de Callback?

Um callback é uma função passada como argumento. A função externa a chama para concluir uma tarefa. Use callbacks para: • Tarefas assíncronas, como buscar dados. • Manipulação de eventos, como cliques em botões. • Criação de código reutilizável.

Objetos JavaScript

Um objeto armazena dados em pares de chave-valor. As chaves identificam os valores. Os valores podem ser primitivos, outros objetos ou funções.

Você pode criar objetos de duas maneiras:

  1. Object Literals: Use chaves para definir propriedades. Exemplo: let user = {name: "Sourav", age: 23};

  2. Object Constructor: Use o comando new Object(). Exemplo: let user = new Object();

Objetos são mutáveis. Você pode adicionar, alterar ou excluir propriedades a qualquer momento. Isso ajuda a agrupar dados relacionados.

Fonte: https://dev.to/karthick_07/understanding-callback-functions-objects-and-synchronous-programming-a-comprehensive-guide-27lb