- 1
- 0
- 约6.1千字
- 约 9页
- 2026-08-20 发布于河北
- 举报
阿里前端高频面试题(含详细落地答案)
一、JS核心基础(阿里必问)
1.讲讲var/let/const的区别,实际开发怎么用?
详细答案:
首先核心区别就三点:作用域、变量提升、重复声明、修改规则。
var是函数作用域,存在变量提升,允许重复声明,赋值可修改。最大的问题是没有块级作用域,for循环定时器、条件判断里很容易出现变量泄露,开发中现在基本不用。
let和const是块级作用域({}内部有效),不存在变量提升(准确说是暂时性死区),不允许重复声明。
let可以后续修改值,const声明的是常量,基础类型不能改,引用类型(对象、数组)可以改内部属性,不能直接重新赋值。
业务落地规范:日常开发默认全部用const,只有变量需要重新赋值的时候再改成let,彻底不用var,规避变量污染问题。
2.什么是闭包?闭包的优缺点、业务场景、以及内存问题
详细答案:
简单说:内层函数访问外层函数的变量,并且内层函数被外部调用,就形成了闭包。核心是函数作用域不销毁,保留了外层的变量上下文。
常用业务场景:
1.做私有变量,比如封装工具方法,不暴露内部临时变量;
2.防抖、节流函数,保存定时器、上次执行时间;
3.循环绑定事件,保存每一次的循环变量;
4.柯里化函数、缓存结果函数。
优点:保留变量状态、实现私有化、缓存数据。
缺点:容易造成内存泄漏
您可能关注的文档
最近下载
- 2021-2025年高考地理试题分类汇编:交通(全国通用)原卷版.pdf VIP
- 教研工作总结计划(精选15篇).pdf VIP
- 十年(2016-2025)高考地理真题分类汇编 专题03 地球上的大气(全国通用)(原卷版).pdf VIP
- 宣贯培训(2026年)《HB 5261-2023金属材料K-R曲线试验方法》.pptx VIP
- 《HB 5261-2023 金属材料 K-R 曲线试验方法》专题研究报告.pptx VIP
- 沉香陈曲丸_圣济总录卷四十六_减法方剂树.doc VIP
- 2016-2025年高考地理试题分类汇编:人口(全国通用)原卷版.pdf VIP
- 01685动漫艺术概论复习资料.docx VIP
- 2016-2025年高考地理试题分类汇编:自然灾害与地理信息技术(全国通用)原卷版.pdf VIP
- 2016-2025年高考地理试题分类汇编:地质地貌(全国通用)原卷版.pdf VIP
原创力文档

文档评论(0)