面试真题

前端 · 中等 · 腾讯

JS 中的闭包(闭包是什么?原理?)

中等 前端 🎤 腾讯
参考答案
结论:闭包是函数与其词法环境的组合,使内部函数可访问定义时外层变量,即使外层函数已返回。原理:JS采用词法作用域,函数创建时保存作用域链;当内部函数被外部引用,外层变量对象不被GC回收。要点:1) 形成条件:嵌套函数且内部引用外部变量;2) 应用:私有变量、函数工厂、回调传参;3) 示例:function o(){let x=0; return ()=>++x;};4) 风险:滥用导致内存占用,需手动解引用。闭包是实现模块封装的基础。
题目整理自公开面经,答案由校招宝自研生成,仅供参考