How do CommonJS and ES Modules differ in their execution timing?
CommonJS and ES Modules have fundamentally different execution models: 1) CommonJS modules are loaded, executed, and processed synchronously at runtime, 2) ES Modules are loaded asynchronously and parsed before execution (during the parsing phase), 3) CommonJS's synchronous nature can block the main thread when loading modules, 4) ES Modules' asynchronous loading enables better performance optimization, 5) ES Modules support top-level await, while CommonJS doesn't, 6) CommonJS modules are evaluated when they're required, 7) ES Modules support static analysis during the build phase due to their design.