招商银行Web前端开发社招,地狱级难度!
最近不少前端朋友投递招商银行招商银行Web前端社招岗位反馈出奇一致面试难度远超预期根本不是普通中厂的水平堪称银行前端社招的“地狱难度”。很多人误以为银行前端岗偏传统、重稳定、技术考察宽松无非问问基础八股、项目业务难度远低于互联网大厂。但真正面过招行前端社招的人都清楚近两年它的面试标准已经全面升级兼顾互联网的技术深度和金融岗的能力门槛通过率极低。不同于校招侧重基础知识兜底社招面试完全不刷基础八股默写全程围绕深度原理、工程落地、业务优化、前沿技术深挖。很多求职者明明Vue、ReactReact熟练日常业务开发、接口调试、页面重构都得心应手基础知识点也烂熟于心却屡屡卡在二面、终面遗憾止步。原因并不是大家的传统前端能力不够而是没跟上招行前端岗位的招聘变化。作为金融科技头部企业招行前端早已摆脱单纯切图写页面的传统模式目前中高级社招岗非常看重前端工程化前端工程化、性能优化、复杂业务架构落地以及当下主流AI前端的AI前端落地能力。以下 https://github.com/encode-studio-fe-coder/natural_traffic/wiki/scan_material3前端工程化1.package.json 文件中的 devDependencies 和 dependencies 对象有什么2.webpack5 的主要升级点有哪些?3.说下Vite的原理4.与webpack类似的工具还有哪些?区别?5.说说如何借助webpack来优化前端性能?6.说说webpack proxy工作原理?为什么解决跨域?7.说说webpack的热更新是如何做到的?原理是什么?8.说说Loader和Plugin的区别?编写LoaderPlugin的思路?9.说说webpack中常见的Plugin?解决了什么问题?10.说说webpack中常见的Loader?解决了什么问题?11.说说webpack的构建流程?12.说说你对webpack的理解?解决了什么问题?13.webpack loader 和 plugin 实现原理14.如何提高webpack的构建速度?15.说说 webpack-dev-server 的原理16.你对 babel 了解吗能不能说说,几个 stage 代表什么意思?17.webpack的module、bundle、chunk分别指的是什么?18.什么是 CI/CD?19.说说你对前端工程化的理解20.说说你对 SSG 的理解21.聊聊 vite 和 webpack 的区别22.webpack treeshaking机制的原理是什么?23.介绍一下 tree shaking 及其工作原理24.前后端分离是什么?25.Babel的原理是什么26.webpack的热更新是如何做到的?说明其原理27.如何提高webpack的打包速度28.如何用webpack来优化前端性能29.webpack的构建流程是什么30.webpack的Loader和Plugin的不同31.webpack有哪些常见的Plugin32.webpack、rollup、parcel优劣33.Webpack中loader的作用是什么以及常用loader有哪些34.谈谈你对 Webpack 的认识前端性能优化1.script标签放在header里和放在body底部里有什么区别?2.前端性能优化指标有哪些?怎么进行性能检测?3.SPA(单页应用)首屏加载速度慢怎么解决?4.如果使用CSS提高页面性能?5.怎么进行站点内的图片性能优化?6.虚拟DOM一定更快吗?7.有些框架不用虚拟dom但是他们的性能也不错是为什么?8.如果某个页面有几百个函数需要执行可以怎么优化页面的性能?9.讲一下png8、png16、png32的区别并简单讲讲 png 的压缩原理10.页面加载的过程中JS 文件是不是一定会阻塞 DOM 和 CSSOM 的构建11.React.memo()和 useMemo()的用法是什么有哪些区别?12.导致页面加载白屏时间长的原因有哪些怎么进行优化?13.如果一个列表有 100000 个数据这个该怎么进行展示?14.DNS 预解析是什么?怎么实现?15.在 React 中可以做哪些性能优化?16.浏览器为什么要请求并发数限制?17.如何确定页面的可用性时间什么是 Performance API?18.谈谈对 window.requestAnimationFrame 的理解19.css加载会造成阻塞吗?20.什么是内存泄漏?什么原因会导致呢?21.如何用webpack来优化前端性能22.说说常规的前端性能优化手段23.什么是Css Sprites?24.CSS优化、提高性能的方法有哪些?25.script 标签中 async 和 defer 两个属性有什么用途和区别?前端业务场景题1.如何判断用户设备2.将多次提交压缩成一次提交3.介绍下navigator.sendBeacon方法4.混动跟随导航电梯导航该如何实现5退出浏览器之前发送积压的埋点数据请求该如何做6.如何统计页面的long task长任务【热度140】7.PerfoemanceObserver如何测量页面性能8.移动端如何实现下拉滚动加载顶部加载9.判断页签是否为活跃状态10.在网络带宽一定的情况下切片上传感觉和整体上传消费的时间应该是差不多的这种说法正确吗11.大文件切片上传的时候确定切片数量的时候有那些考量因素12.页面关闭时执行方法该如何做13.如何统计用户pv访问的发起请求数量14.长文本溢出展开/收起如何实现15.如何实现鼠标拖拽16.统计全站每一个静态资源加载耗时该如何做17.防止前端页面重复请求18.ResizeObserver作用是什么19.要实时统计用户浏览器窗口大小该如何做20.当项目报错你想定位是哪个commit引I入的错误的时该怎么做21.如何移除一个指定的commit22.如何还原用户操作流程23.可有办法将请求的调用源码地址包括代码行数也上报上去24.请求失败会弹出一个toast,如何保证批量请求失败只弹出一个toast【热度:420】25.如何减少项目里面if-else【热度:310】26.babel-runtime 作用是啥【热度:200】27.如何实现预览PDF文件28.如何在划词选择的文本上添加右键菜单划词标滑动选择一组字符对组字符进行操作【热度100】29.富文本里面是如何做到划词的(鼠标滑动选择一组字符对组字符进行操作)【热度100】30.如何做好前端监控方案【热度:672】31.如何标准化处理线上用户反馈的问题【热度631】32.px 如何转为rem【热度:545】33.浏览器有同源策略但是为何cdn请求资源的时候不会有跨域限制【热度:57934.cookie可以实现不同域共享吗【热度533】35.axios是否可以取消请求【热度532】36.前端如何实现折叠面板效果37.dom里面如何判定a元素是否是b元素的子元素【热度400】38.判断一个对象是否为空包含了其原型链上是否有自定义数据或者方法。该如何判定39.is如何判空「空」包含了空数组、空对象、空字符串、0.undefinednull、空map、空set,都属于为空的数据【热度640】40.css实现翻牌效果【热度116】41.flex:1代表什么【热度400】42.一般是怎么做代码重构的43.如何清理源码里面没有被应用的代码主要是JS、TS.CSS代码【热度329】44.前端应用如何做国际化【热度199】45.应用如何做应用灰度发布【热度247】46.「微前端]为何通常在微前端应用隔离不选择iframe方案【热度280】47.[微前端]Qiankun是如何做JS隔离的【热度:228】48.[微前端]微前端架构一般是如何做JavaScript隔离49.[React]循环渲染中为什么推荐不用index 做key【热度320】50.[React]如何避免使用context 的时候引起整个挂载节点树的重新渲染【热度420】51.前端如何实现截图52.当QPS达到峰值时该如何处理53.js超过Number 最大值的数怎么处理54.使用同一个链接如何实现PC 打开是web应用、手机打开是-个H5应用[腾讯二面】55.如何保证用户的使用体验【字节一面】56.如何解决页面请求接口大规模并发问题【必会】57.设计一套全站请求耗时统计工具58.大文件上传了解多少【百度一面】59.H5如何解决移动端适配问题【美团一面】60.站点一键换肤的实现方式有哪些【美团一面】61.如何实现网页加载进度条【百度一面】62.常见图片懒加载方式有哪些【京东一面】63.cookie构成部分有哪些【百度一面]64.扫码登录实现方式【腾讯一面]65.DNS协议了解多少【字节一面】66.函数式编程了解多少【京东一面】67.前端水印了解多少【腾讯一面】68.什么是领域模型【必会】前端AI结合面试题一、TypeScript与类型系统20题在定义AI接口返回的嵌套数据结构如多轮对话、工具调用结果时如何用TypeScript的泛型与条件类型实现灵活的类型推导当AI接口返回的字段可能因模型版本不同而动态变化时如何设计类型守卫type guard与类型收缩策略请用TypeScript实现一个“类型安全的Prompt模板解析器”要求支持变量插值、类型校验与默认值。如何用TypeScript的模板字面量类型Template Literal Types约束AI返回的特定格式字符串如日期、ID设计一个类型系统用于描述AI Agent执行过程中的状态流转如思考→执行→观察→完成并实现类型安全的状态切换。在联合类型Union Types与交叉类型Intersection Types中哪种更适合定义多模态AI输出文本、图像、音频为什么如何用TypeScript声明一个支持流式Chunk数据与错误处理的泛型接口并兼容SSE、WebSocket等多种传输方式当AI服务返回的数据结构包含递归引用如对话树时如何用TypeScript定义并避免循环引用导致的类型爆炸请设计一个类型系统用于前端对AI模型元数据版本、输入输出格式、最大Token数的静态校验。如何用TypeScript的infer关键字提取AI流式响应中的嵌套数据字段如choices[0].delta.content二、流式处理与实时通信25题请设计一个支持“断线重连消息去重”的SSE客户端并处理AI长文本生成中的网络抖动问题。如何在前端实现一个“流式Markdown解析器”在AI逐字输出过程中实时渲染标题、列表、代码块并避免标签截断当AI流式返回的数据包含多个独立片段如文本、代码、表格时如何设计Chunk合并算法以保证片段完整性请实现一个支持“优先级调度”的流式请求队列允许用户中断低优先级生成如翻译以优先处理高优先级任务如代码生成。在React 18中如何用useTransition与useDeferredValue优化AI流式输出的渲染性能避免主线程阻塞设计一个“流式数据缓存”策略将AI已生成的内容分段存储于IndexedDB支持离线续写与历史回放。如何用Web Worker并行处理多个AI流式响应如同时生成文本与摘要并实现跨线程状态同步当AI服务端返回的流式数据包含自定义事件如[DONE]、[ERROR]时前端如何解析并触发相应回调请设计一个“流式进度估算”组件根据已接收的Token数与模型速率动态预测AI生成剩余时间。如何实现AI流式输出的“语音同步朗读”TTS确保语音与文字逐句对应并支持暂停、跳过三、前端状态管理与数据流21题在大型AI应用中如何用Zustand或Redux Toolkit管理多轮对话、生成任务、用户配置等复杂状态设计一个“状态快照”系统支持将AI对话的完整状态包括流式中间结果序列化保存与恢复。如何用XState或状态图Statechart建模AI Agent的完整工作流包括工具调用、条件分支、错误处理在微前端架构下多个AI功能模块需要共享“当前模型版本”状态如何设计跨应用状态同步方案请设计一个“乐观更新”策略在用户发送AI请求后立即在UI中显示预期结果再根据实际流式响应逐步修正。如何用immer或immutable.js优化AI对话列表的不可变更新避免深拷贝导致的性能问题设计一个“状态版本控制”系统支持AI对话历史的任意回退、分支创建与合并类似Git。在离线优先的AI应用中如何用RxJS或tanstack/query管理本地缓存与网络状态的同步如何用Recoil或Jotai的原子Atom机制实现AI生成参数的细粒度响应式更新如温度、top_p设计一个“状态持久化”方案将AI应用的关键状态自动保存至IndexedDB并支持跨标签页同步。四、性能优化与渲染20题在万条级别的AI对话历史中如何实现毫秒级搜索与过滤关键词、时间范围、模型类型请设计一个“虚拟化渲染”方案用于超长AI生成内容如数万Token的文档的平滑滚动与快速定位。如何用WebGL或Canvas实现AI生成图像的高性能实时预览如缩放、拖拽、滤镜在AI代码编辑器中如何优化语法高亮、代码折叠、错误波浪线的渲染性能避免输入卡顿设计一个“按需加载”策略仅渲染AI对话列表中可视区域及附近的消息其余部分保留为纯文本。如何用WASM加速前端本地的AI推理如句子嵌入、相似度计算并实现与JavaScript的无缝交互在AI实时语音转文字场景中如何用Web Audio API优化音频流处理降低内存与CPU占用请设计一个“渲染优先级”调度器确保AI生成中的关键UI如输入框、发送按钮始终响应迅速。如何用React.memo、useMemo、useCallback避免AI消息列表因无关状态变更导致的全量重渲染在AI多模态输出文本图像表格场景中如何分阶段渲染以提升首屏速度五、前端AI架构设计19题请设计一个“微前端模块联邦”的AI应用架构支持独立部署聊天、编辑、可视化等子应用。如何用Monorepo管理AI前端、Node.js中间层、共享类型定义、工具脚本的统一代码库设计一个“插件化”AI前端框架允许第三方开发者通过插件扩展模型接入、UI组件、工具调用。在AI多租户SaaS平台中如何设计前端架构以支持动态主题、自定义域名、独立功能开关如何用DDD领域驱动设计划分AI前端的核心领域对话、模型、工具、知识库与界限上下文设计一个“事件驱动”架构用EventEmitter或MessageChannel解耦AI各个模块输入、处理、输出。在AI实时协作场景中如何用OT操作转换或CRDT实现多用户并发编辑的冲突解决如何设计一个“配置驱动”的AI工作流引擎前端通过JSON或YAML定义节点、连接线、条件分支请设计一个“前后端分离”的AI应用前端直接调用多个AI服务商API后端仅做鉴权与计费代理。在AI嵌入式场景如IDE插件中如何设计轻量级SDK提供一致的API供宿主应用调用六、AI特性与前端工程实践14题在前端实现一个Agent循环时如何管理工具调用的异步执行、超时处理与结果合并请设计一个前端本地的向量检索系统用TensorFlow.js或ONNX Runtime计算句子嵌入并做相似度匹配。在AI产品中前端可以通过哪些技术手段如缓存、压缩、懒加载帮助降低Token成本如何建立AI生成内容的质量评估体系前端可在交互层面提供哪些反馈机制如评分、标注、修正在处理AI幻觉Hallucination时前端可以设计哪些实时提示与用户教育交互如何实现前端本地的敏感词过滤与内容安全审核在发送至AI服务前进行初步筛查请设计一个前端实验平台支持对AI模型参数温度、top_p、Prompt模板、UI布局进行A/B测试。如何用WebAssembly在前端运行轻量级AI模型如TinyLLM、蒸馏模型实现离线推理在AI多轮对话中如何设计上下文窗口的管理策略如滑动窗口、关键信息提取、自动摘要如何实现AI生成结果的“一键格式化”如Markdown转富文本、代码缩进、表格对齐七、AI工程化与前端工具链18题如何设计一个AI前端项目的标准化目录结构兼顾业务功能、共享组件、工具函数与类型定义请设计一套AI前端代码规范ESLint、Prettier、Commitlint并集成Git Hooks自动检查。如何用Husky、lint-staged、Commitizen打造AI项目的自动化提交与代码质量流水线设计一个AI前端项目的CI/CD流水线包括代码检查、单元测试、E2E测试、构建优化、自动部署。如何用Docker容器化AI前端应用实现开发、测试、生产环境的一致性请设计一个AI前端性能监控方案收集FP、FCP、LCP、CLS等核心指标并关联AI特定指标如Token/s。如何用Sentry或Bugsnag监控AI前端异常自动捕获错误上下文用户输入、模型参数、网络状态设计一个AI前端日志系统结构化记录用户操作、AI请求、响应时间、错误信息便于回溯分析。如何用Webpack或Vite优化AI前端构建性能实现代码分割、Tree Shaking、预加载、持久缓存请设计一个AI前端依赖管理策略定期更新模型SDK、工具库并评估兼容性与性能影响。八、大模型前端集成7题如何用OpenAI Function Calling或Tools在前端实现AI工具调用如计算器、搜索、数据库查询请设计一个模型性能监控面板实时展示各模型的响应时间、成功率、Token消耗与成本。如何用LangChain.js在前端构建AI链Chain串联多个Prompt、模型调用、工具执行如何实现模型调用的“请求合并”将多个用户的相似问题批量发送提升吞吐并降低成本如何用WebSocket实现双向流式通信支持AI模型主动推送进度更新、中断信号、工具调用请求如何用Server-Sent Events实现模型输出的“进度条”与“部分结果预览”如何用Web Workers并行调用多个模型实现“模型投票”或“结果融合”以上all https://github.com/encode-studio-fe-coder/natural_traffic/wiki/scan_material3