Skip to content

模拟题四

1. 左边宽度已知,右边自适应方案

2. 手写 Object.create

3. 作用域

谈下你的作用域的理解

考察点:作用域 js 的作用域是词法作用域,其特点是在那里定义它就作用在那里,与定义位置有关而与调用位置无关 作用域分为全局作用域、函数作用域、块级作用域 全局作用域顾名思义,全局中只有一个 函数作用域只作用于函数中,函数内的变量函数外不能调用。 块级作用域仅在 let、const 声明时才会形成 因为函数作用域的特点使得作用域有链状,即作用域链 作用域又有闭包的产生

3. 继承

考察点:继承 原型链继承、借用构造函数继承、组合继承、原型式继承(Object.create)、寄生式继承、寄生组合式继承

4. Class

Class 继承

5.setState 是同步的还是异步

代码是同步的,但是 setState 做批处理,当非原生事件和 setTimeout 等事件下,它的表现为异步。

什么事件可以触发异步,什么会触发同步

React17 更新

React18 更新

6.Redux 中间件机制

考察点:redux 核心逻辑

增强器 applyMiddleware 函数,装饰器模式

7.浏览器:如何定位内存泄露

https://febook.hzfe.org/awesome-interview/book3/browser-memory-leaks

内存泄露有哪些情况

最常见的情况就是异步任务的回调未清除或者定时器任务没有清楚,其他的还有DOM引用未清除等。

如何排查内存泄露

通过开发者工具中的Performance模块,可以对页面加载和执行流程进行录制,之后在录制快照里查看内存的使用情况。如果发现有内存异常,则可以进一步缩小排查范围,最终找到引发内存泄露的代码。

8.工程化:split code 代码分割的原理是什么

9.微前端有什么用

https://juejin.cn/post/7242623208841592869

10. 算法题:二叉树的前序遍历 ⭐

二叉树的前序、中序、后序遍历