创见博客
滴滴一面(9.9)
七崽爱吃小饼干2026/09/11阅读 0
  1. 自我介绍
  2. 比较有挑战性的项目
    • SSG改造系列
  3. 在百度做过哪些工作
    • 虚拟列表优化(为什么会有问题,怎么优化的)
    • sse 和 websokect的区别
    • 介绍埋点优化
  4. 事件循环题
  5. 递归调用(函数、宏任务、微任务)会不会影响点击事件
  6. ai协助开发一个方法,处理异步任务,最大并发2。开发这样一个方法,提示词应该关注哪些内容。
  7. 除了单测的方式,还有什么方法可以测试(再起一个ai进行对抗)
  8. 如果想让ai操作redux状态,用一个mcp,有什么实现方案
  9. 介绍一下redux和mobx的区别,有什么不同的应用场景。redux和redux toolkit的对照关系。
  10. redux怎么实现的状态隔离(createSlice,命名空间)
  11. 反问

递归调用(函数、宏任务、微任务),会发生什么

https://visionaryblog.cn/reader/460

ai协助开发一个方法,处理异步任务,最大并发2。开发这样一个方法,提示词应该关注哪些内容。

提示词一般拆成几个部分:

  1. 目标:最终要得到什么
  2. 环境:用什么语言
  3. 输入输出:
  4. 边界情况:注意边界情况
  5. 测试用例:覆盖边界情况,得到稳妥的结果

除了单测的方式,还有什么方法可以测试

再起一个ai B,ai B不知道实现细节,只知道接口契约,专门设计刁钻 case、攻击用例,去找出红方代码漏洞(黑盒测试) 还可以静态代码分析(白盒测试)

介绍一下redux和mobx的区别,有什么不同的应用场景。redux和redux toolkit的对照关系。

redux和mobx的原理不一样,mobx是基于Proxy实现的双向绑定,语法简单,redux是基于不可变数据实现的单向数据流。所以mobx适合中小型项目,可以快速迭代开发。redux更适合大型项目,因为是单向数据流,所以出现bug时,状态易追踪。mobx基于双向绑定实现,性能虽然一般更好,但是出现问题时,不容易溯源。

  1. 原生 Redux
  • 需要手动定义 action type 常量、手写 action creator
  • reducer 必须手动保证不可变,需要手动拷贝对象 {...state},嵌套对象会非常麻烦
  • 手动配置 redux-devtools、中间件(thunk)
  • 手动合并多个 reducer combineReducers
  • 异步:手动引入 redux-thunk 中间件,手写 thunk 函数
  1. Redux Toolkit(RTK)
  • createSlice:自动生成 action type 和 action creator,省去大量样板
  • 内部集成 Immer:reducer 里可以直接写 “修改 state” 的语法,Immer 在底层帮你生成不可变新 state(只是写法看起来可变,底层依然遵守 Redux 不可变原则)
  • 内置 redux-thunk、redux-devtools,开箱即用
  • createAsyncThunk:封装异步请求,自动生成 pending/fulfilled/rejected 三个 action
  • createSelector 内置 reselect,方便做记忆化派生状态 createSlice
评论
0/100