二三面试题
这世间,总有人爱自己
闭包概念以及应用场景
闭包指的是有权访问 另一个函数作用域中的变量的 函数。 本质上是在一个函数内部定义了一个子函数,该子函数可以读取父函数定义的变量
原理:当前作用域链可以访问父级作用域链中的变量
解决的痛点:能够使父级作用域链中的保存的变量始终处于被引用态从而不被回收
弊端: 由于父级作用域链中的变量始终处于被引用态因而不会被垃圾回收器回收,因为除非手动清除否则不会被回收,会导致内存泄漏,从而内存溢出
应用场景: 防抖与节流
解决方案:
vue $nexttick
在下次dom更新完毕后执行延迟回调
在下次dom更新后执行延迟回调函数,在回调函数中可以拿到更新后的dom
在dom更新后执行回调函数,在回调函数内可以拿到更新后的dom
在created()/mounted()钩子函数执行的时候DOM 其实并未进行任何渲染
vue set应用场景
用于在响应式数据中添加数据
vue-route两种路由方式的区别
promise.all与axios.all的区别
本质是一样的axios.all只是封装了promise.all除此外没有任何添加任何逻辑
关键是.then的不同,promise.all.then返回的是一个数组,axios.all.then可以使用axios.spread函数,这个函数接受与异步api相同的参数个数,分别表示不同的api结果
promise.all只有所有的结果都返回成功才会返回fullfilled,否则返回reject
promise.rase与promise.all的区别
promise.rase只取返回速度最快的异步结果,不论结果是成功或失败
for...in 与object.keys的区别
你在工作中最难忘的事情是什么
有在工作中对项目进行过优化吗,具体有哪些?
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义