Edition 1 · PDF · 317 pages

JavaScript Interview Pack

209 interview questions, 60 output drills, a 300-item cheatsheet and a 204-term glossary, for freshers and developers with up to three years of experience. Every runnable snippet was run on Node.js 26.13.0 (LTS). The output you see in the pack came from that run.

Launch price: ₹199 for the first 50 buyers

Regular price: ₹299

Apply coupon above, then buy — Razorpay opens after that

Pay, then download the PDF straight away. We also email you a copy. About 2.5 MB.

See a sample question ↓

For your own study only. Please don't share the file. Refund policy

Cover of the Schoolabe JavaScript Interview Pack, Edition 1. The cover lists 209 interview questions, 60 output drills, 300 cheatsheet items and 204 glossary terms, and says all code was run on Node.js 26.13.0 (LTS).
  • 317 pages
  • 209 questions
  • 22 topics
  • 36 DSA coding questions
  • 60 output drills
  • 300 cheatsheet items
  • 204 glossary terms
  • Run on Node.js 26.13.0 (LTS)

What's inside the JavaScript pack

The questions start with types and scope, then move through closures, this, prototypes, the event loop, promises, modules, the DOM, and coding problems. After the questions come the drills, a cheatsheet and a glossary. You do not need to read it in one go. Treat it like a revision notebook.

TopicQuestionsCount
Types and coercionQ1–Q1414
Scope: var, let and constQ15–Q217
Hoisting and the temporal dead zoneQ22–Q287
ClosuresQ29–Q379
this, call, apply and bindQ38–Q4710
Prototypes and classesQ48–Q6114
The event loopQ62–Q7110
PromisesQ72–Q8110
async and awaitQ82–Q898
Arrays and objectsQ90–Q10314
Destructuring, spread and modern syntaxQ104–Q1118
Modules: ESM and CommonJSQ112–Q1187
Error handlingQ119–Q1257
Iterators, generators and SymbolQ126–Q1327
Map, Set, WeakMap and WeakRefQ133–Q1397
Strings and template literalsQ140–Q1467
Dates and timeQ147–Q1504
JSONQ151–Q1544
DOM and eventsQ155–Q1628
Memory and garbage collectionQ163–Q1675
Common interview trapsQ168–Q1736
Coding questions (DSA style)Q174–Q20936
  • How to use this pack and a 7-day revision plan, at the front.
  • Output prediction drills (P1–P60). Short snippets, a box for your guess, and "Answer on page N" under each one. All answers, with the "why", are together at the end of that section.
  • Cheatsheet: everyday JavaScript reference — 300 items in 27 groups, from types and arrays to promises, Map and JSON. Each row has a one-line description, a tiny example, and its real output.
  • Glossary — 204 terms, in alphabetical order, each explained in a sentence or two.

Sample pages

These are real pages from the Edition 1 PDF, shown so you can judge the layout and the writing. They are not a free chapter.

One question, as it appears in the pack

This is Q1 from Types and coercion, copied from the PDF. The rest of the pack follows the same shape: a short answer, an "In simple words" line, why it works, the real output, common mistakes, and follow-ups.

Q1 · Types and coercion

What types does JavaScript have?

JavaScript has seven primitive types: string, number, bigint, boolean, undefined, symbol and null. Everything else is an object, including arrays, functions, dates and regular expressions. A variable is not typed; the value is. The same variable can hold a number one moment and a string the next.

In simple words: The value has a type, the variable does not; there are seven primitives, and everything else is an object.

Why it works

JavaScript is dynamically typed: you do not declare that price is a number. You just put a number in it. The engine tags each value with its type at run time. A primitive is a single value that is not an object: text, a number, a boolean, and so on. When you pass a primitive into a function or assign it, you copy the value itself. When you pass an object, you copy the reference, so two variables can point at the same object.

Functions are objects that you can call. Arrays are objects that use integer keys and a length. This is why typeof is not enough on its own: typeof [] and typeof {} are both "object", and typeof null is also "object" (Q2).

symbol values are unique tokens, often used as hidden keys. bigint holds integers that are too large for number (Q7). Both were added after the original language and have their own typeof results.

const values = [42, "chai", true, undefined, null, 10n, Symbol("id"),
{ city: "Pune" }, [1, 2], function () {}];
for (const value of values) {
  console.log(typeof value);
}

Output, real run on Node.js 26.13.0:

number
string
boolean
undefined
object
bigint
symbol
object
object
function

Common mistakes

  • Saying JavaScript has no types. It has types; it just does not bind them to variables.
  • Calling arrays a separate type. They are objects (Array.isArray is the right test).
  • Forgetting bigint and symbol when listing primitives.

Follow-ups

  • Is a function a type? typeof fn is "function", which is a historical special case. A function is still an object: it can have properties.
  • What about NaN? It is a number, not a separate type (Q5).
  • What is TypeScript, then? (Advanced) TypeScript adds a type checker on top of JavaScript. The types are erased when the code is compiled, so the engine still only sees plain JavaScript at run time.

Who this pack is for

This pack is for freshers and developers with up to three years of experience who already write some JavaScript and want to revise for interviews.

It will help if you are preparing for a first job, an internship, or a frontend / full-stack role where the interviewer will ask about types, closures, this, the event loop, promises, and a few coding problems.

It is not a first JavaScript tutorial. If you are still learning the language itself, learn that first, then use this pack when you are practising interview answers.

How to use the pack

  • You do not need to read 317 pages in one sitting. A useful session is a handful of questions, said out loud.
  • Read the question and say your answer out loud before you read the short answer, as if someone is sitting in front of you. Speaking is a different skill from knowing.
  • Before you look at the output of a code block, write down what you think it will print. Then check. The gap between your guess and the real output is what you need to revise.
  • Type the code into a file and run it with node file.js (or node file.mjs for an ES module). Then change one thing, such as swapping var for let or replacing == with ===, and see what breaks. Five minutes of this beats an hour of reading.
  • Tick the box next to each question in the contents when you can answer it without looking. On Day 7, come back to every question you have not ticked.
  • In the real interview, start with the short answer. Stop. Let the interviewer decide whether to go deeper. A good answer has three parts: what it is, why it behaves that way, and when you would use it in real code. For coding questions, say the simple idea first, then improve it, and state the time and space cost.

A 7-day revision plan

The pack assumes about three hours a day: two for the topic questions, one for coding and output drills. If you have less time, do the must-know questions first. Every day ends with a few coding questions, so you practise problem solving all week instead of cramming it on the last day.

DayTopicsCodingDrillsMust-know first
1Types and coercion (Q1–Q14), Scope (Q15–Q21), Hoisting and the TDZ (Q22–Q28), Strings (Q140–Q146)Q174–Q179P1–P8Q3, Q2, Q5, Q6, Q15, Q25, Q141
2Closures (Q29–Q37), this, call, apply and bind (Q38–Q47), Prototypes and classes (Q48–Q61)Q180–Q183P9–P18Q29, Q30, Q38, Q41, Q48, Q52, Q54
3The event loop (Q62–Q71), Promises (Q72–Q81), async/await (Q82–Q89)Q184–Q189P19–P30Q62, Q63, Q65, Q75, Q82, Q80
4Arrays and objects (Q90–Q103), Destructuring, spread and modern syntax (Q104–Q111), Map, Set and WeakMap (Q133–Q139)Q190–Q194P31–P42Q92, Q90, Q97, Q107, Q108, Q133
5Modules (Q112–Q118), Errors (Q119–Q125), Iterators, generators and Symbol (Q126–Q132), Dates (Q147–Q150), JSON (Q151–Q154)Q195–Q199P43–P52Q112, Q121, Q127, Q147, Q151
6DOM and events (Q155–Q162), Memory and garbage collection (Q163–Q167), Common traps (Q168–Q173)Q200–Q205P53–P60Q156, Q159, Q164, Q170, Q169
7Every question you have not ticked, especially coding questions and any drill you got wrongQ206–Q209Every drill you got wrongQ209, then the must-know items you still hesitate on

On Day 7, the pack suggests finishing with a 30-minute mock interview with a friend: they pick random question numbers, you answer out loud, then you solve one coding question while explaining your thinking.

Each day also has cheatsheet groups to skim. Day 7 is a slow pass over every group, the evening before your interview.

Licence and refunds

The PDF is licensed to you, the person who bought it, for your own personal study only. You may read it on your own devices, print one copy for yourself, and copy the code examples into your own practice files and projects.

You may not share the file, or any part of it, with other people, for free or for money; resell it or include it in another product; upload it to a website, drive, group, channel or file-sharing service; or remove the Schoolabe name and copyright lines.

If a friend would find this pack useful, please send them to schoolabe.com instead of sending them the file.

Refunds follow Schoolabe's refund policy. That page says digital products that have been fully accessed or downloaded are generally non-refundable. Please read the policy before you buy.

JavaScript is a trademark of Oracle. Node.js is a trademark of the OpenJS Foundation. This pack is not made or endorsed by Oracle or the OpenJS Foundation.

Questions about the JavaScript pack

How many questions are in the JavaScript Interview Pack?

209 interview questions across 22 topics, including 36 DSA-style coding questions. There are also 60 output-prediction drills, a 300-item cheatsheet and a 204-term glossary. The PDF is 317 pages.

Was the code in the pack actually run?

Yes. Every runnable snippet was executed on Node.js 26.13.0 (LTS), and the output was copied from that run by a script, not typed by hand. A few DOM examples cannot run on Node; those are marked "Browser code, not run here".

Which Node.js version should I practise on?

Node.js 26 LTS. The pack was run on Node.js 26.13.0. Matching that version keeps the outputs aligned with the PDF.

I am new to JavaScript. Should I buy this?

Only if you already write some JavaScript and are preparing for interviews. This is a revision pack, not a first tutorial.

How do I get the file, and can I print it?

After you pay, you download the PDF straight away, and we email you a copy. The licence allows one printed copy for your own use.

Can I share it with my classmates?

No. The licence is for the person who bought it. Please point classmates to schoolabe.com.

What is the refund policy?

See Schoolabe's refund policy. Digital products that have been fully accessed or downloaded are generally non-refundable under that policy.

Free practice stays at /interview-prep.