Lesson 12/100

Tutorials Node.js Tutorial

Callbacks — Complete Guide

Callbacks — Complete Guide: free step-by-step lesson with examples, common mistakes, and interview tips — part of Node.js Tutorial on Toolliyo Academy.

On this page
Callbacks
Lesson 12 of 100 · Module 2: Async Programming · BEGINNER
Topic: Callbacks · Level: BEGINNER · Read time: ~12 min + hands-on

Callbacks

This lesson covers Callbacks. If this feels new, that is normal. We will build up slowly.

What you will learn

  • What callbacks means — in normal words, not textbook words
  • How it works step by step
  • Code you can run today on your laptop
  • Where teams use this in real projects

Before you start

Explain it simply

A callback is a function you pass to another function to run later — when a file is read, a DB query finishes, etc.

Think of it like this: Async code is like ordering food on an app — you do not stand at the counter until it is ready; you get a notification when it is done.

Why developers use this

  • Original Node style for async code
  • Still used in many APIs
  • Understanding callbacks helps read older code

How it works (step by step)

  1. Your code starts a task (read file, query DB, timer).
  2. Node continues other work instead of waiting idle.
  3. When the task finishes, your callback, Promise, or await runs.
  4. Errors go in catch or .catch() — never ignore them.

Code example — type this yourself

const fs = require('fs');
fs.readFile('package.json', 'utf8', (err, data) => {
  if (err) return console.error(err);
  console.log(data.slice(0, 80) + '...');
});

Always check err first. The callback runs when the file read completes.

What each part does

  • const fs = require('fs'); — Loads a built-in module or package you installed with npm.
  • fs.readFile('package.json', 'utf8', (err, data) => { — Line 2: runs as written.
  • if (err) return console.error(err); — Line 3: runs as written.
  • console.log(data.slice(0, 80) + '...'); — Prints to the terminal — great for learning; use proper logging in production.
  • }); — Line 5: runs as written.

Real life: where Callbacks shows up

An online store uses Callbacks so hundreds of users can check order status at once. While one request waits for the database, Node handles other users instead of freezing. Start small: one feature working beats a perfect architecture on paper.

Try it yourself — hands-on

  1. Point readFile at a real file in your project
  2. Log err when the file is missing
  3. Wrap the logic in a named function
Tip: Promises and async/await are easier for new code — use those when you can.

Common mistakes (avoid these)

  • Ignoring the err parameter — silent failures are hard to debug.

Interview note

Interviewers often ask: “What is Callbacks?” Answer in one sentence, then give a tiny example you actually ran.

Summary

  • Callbacks run after async work finishes
  • First argument is often an error
  • Nested callbacks led to "callback hell"

Continue learning

Previous: Event Loop — Complete Guide

Next: Promises — Complete Guide

Lesson 12 of 100 · Node.js Tutorial

Interview prep for this lesson

Practice these questions aloud after reading—each links to a full structured answer.

Mid PDF Detailed
Explain the difference between callbacks, promises, and async/await.
Short answer: Callbacks: Functions passed as arguments, executed when async operation finishes. Can lead to “callback hell.” Promises: Objects representing future results; allow chaining with .then(). Async/await: Syntac…
Mid PDF Detailed
What are common security issues in Node.js applications?
Short answer: Injection attacks (SQL, NoSQL) Cross-Site Scripting (XSS) Cross-Site Request Forgery (CSRF) Broken authentication and session management Insecure handling of sensitive data (passwords, API keys) Unvalidated…
Mid PDF Detailed
How do you deploy a Node.js app to production?
Short answer: Deploying means getting your app from your local machine to a live server. Explain a bit more Basic steps: Choose a hosting platform: VPS (DigitalOcean, AWS EC2), PaaS (Heroku, Vercel), or container platfor…
Junior PDF Detailed
What is clustering in Node.js?
Short answer: time per process. Clustering allows you to create multiple Node.js processes (workers) that share the same server port. This way, your app can utilize multiple CPU cores and handle more requests concurrentl…
Mid PDF Detailed
How do you write unit tests in Node.js?
Short answer: Unit tests check small, isolated pieces of your code (like functions) to make sure they work as expected. Explain a bit more Basic example using Mocha and Chai: // calculator.js function add(a, b) { return…
Questions on this lesson 0

Sign in to ask a question or upvote helpful answers.

No questions yet — be the first to ask!

Node.js Tutorial
Course syllabus

Node.js Tutorial

Module 1: Node.js Foundations
Module 2: Async Programming
Module 3: Express.js & EJS
Module 4: REST APIs & Databases
Module 5: Real-Time & Event Systems
Module 6: Advanced Node.js
Module 7: Performance & Security
Module 8: Testing & Deployment
Module 9: Latest Node.js Features
Module 10: Enterprise Projects
Toolliyo Assistant
Ask about tutorials, ebooks, training, pricing, mentor services, and support. I use public site content only—not admin or internal tools.

care@toolliyo.com

Need callback? Share your details