explaingit

stephentian/33-js-concepts

15,287JavaScriptAudience · developerComplexity · 1/5Setup · easy

TLDR

A Chinese-language study guide listing 33 core JavaScript concepts every developer should understand, closures, prototypes, the event loop, Promises, and more, with curated articles and videos for each topic.

Mindmap

mindmap
  root((33-js-concepts))
    Fundamentals
      Call stack
      Primitive types
      Value vs reference
      Hoisting
    Functions
      Closures and scope
      Higher-order functions
      Currying and compose
      Pure functions
    Async
      Event loop
      Promises
      Message queue
    Objects
      Prototypal inheritance
      Classes and factories
      Design patterns
    Language internals
      JS engine
      Type coercion
      Recursion
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Work through the 33 topic sections systematically to fill gaps in core JavaScript knowledge beyond basic syntax.

USE CASE 2

Use the curated article and video links for a specific concept like closures or prototypes to understand it in depth.

USE CASE 3

Prepare for JavaScript technical interviews by reviewing the foundational concepts most commonly asked about.

Tech stack

JavaScript

Getting it running

Difficulty · easy Time to first run · 5min
Not specified in the explanation.

In plain English

This repository is a curated study guide, mostly written in Chinese, listing 33 concepts the author believes every JavaScript developer should understand. The README explains that it is based on an English original by another author (Leonardo Mso) and that this version was created in Chinese partly because some of the original linked resources are hard to reach from inside China, it bundles articles and videos found within Chinese sites alongside the topic list. It is not software you install and run. It is a long reference document. The table of contents walks through fundamentals such as the call stack, primitive types, value versus reference types, type coercion, this/call/apply/bind, scopes and closures, higher-order functions like map, reduce, and filter, expressions versus statements, hoisting, Promises, recursion, algorithms, data structures, the message queue and event loop, prototypal inheritance, classes and factory functions, design patterns, memoization, pure functions and side effects, the JavaScript engine itself, number bases, and functional building blocks like partial application, currying, compose, and pipe. Each section is a collection of links to articles and videos on that single topic. You would use this repository if you are learning JavaScript and want a structured reading list to work through, or if you already write JavaScript but want to fill in gaps in the underlying concepts. The full README is longer than what was provided.

Copy-paste prompts

Prompt 1
I'm working through the 33 JavaScript concepts guide and just reached the event loop section. Explain how the JavaScript event loop, call stack, and message queue interact, and show me a code example that demonstrates the execution order of synchronous and async code.
Prompt 2
I'm studying closures from the 33-js-concepts guide. Write me three practical JavaScript code examples that show real-world uses of closures, like a counter, a private variable, and a function factory.
Prompt 3
The 33-js-concepts guide covers prototypal inheritance. Show me the difference between using Object.create, constructor functions, and ES6 classes to set up inheritance in JavaScript, with a working example of each.
Prompt 4
I'm on the currying and compose section of 33-js-concepts. Write me a JavaScript example of a curried function and a compose utility, then show how to combine them to build a small data transformation pipeline.
Open on GitHub → Explain another repo

← stephentian on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.