https://blog.cckim.cn/posts/javascript-execution-context/