JavaScript & TypeScript
Scope, closures, async behavior, object identity, and the type system.
CommonJS vs ES Modules: what is the difference?
CommonJS and ES Modules are two systems for dividing JavaScript code into reusable modules. CommonJS uses runtime require calls, while ES Modules provide standard import and export declarations with a statically described dependency structure. Their loading and interoperability rules depend on the runtime and file configuration.
What are streams, buffers and EventEmitter?
A buffer is a container for raw bytes, while a stream processes a sequence of data in chunks. EventEmitter is a mechanism for registering listeners and notifying them when an event occurs. These tools work together in Node networking and file handling, where data can arrive gradually.
How do garbage collection and memory leaks work?
Garbage collection automatically reclaims memory that can no longer be reached by running code. A memory leak happens when the program keeps a reference to data it no longer needs, so the collector must treat that data as still usable. Increasing the heap limit may delay failure but does not remove the unwanted references.
Difficulty is an editorial estimate. Completion means you chose to mark a question as understood.