声明合并与模块扩充有哪些合法用途,如何避免污染全局类型? | 前端进阶之旅