当前位置: 首页 > news >正文

做了 8 年前端开发,35 岁的我突然没人要了

干了 8 年前端,从 jQuery 摸到 Vue3+TS,从切图仔熬成能独立扛项目的老开发,本以为 35 岁该是职场稳扎稳打的阶段,却没想到今年求职接连碰壁 —— 投出去的简历石沉大海,好不容易拿到的面试机会,要么被年轻候选人压价比下去,要么被面试官的几个问题问得哑口无言,突然就体会到了所谓的 “35 岁职场困境”。深耕前端八年的技术积累,好像在年龄和行业新趋势面前,一下子变得不值一提,也开始迷茫,到底是自己的技术跟不上了,还是行业对 35 岁的前端开发,本就带着偏见?

结合这段时间的求职经历,整理了近期面试中遇到的高频核心题,也是让我栽了跟头的几道题,分享出来也给同阶段的前端同行提个醒:

  • 1.请求失败会弹出一个 toast,如何保证批量请求失败,只弹出一个 toast
  • 2.如何减少项目里面 if-else
  • 3.babel-runtime 作用是啥
  • 4.如何实现预览 PDF 文件
  • 5.如何在划词选择的文本上添加右键菜单(划词:鼠标滑动选 择一组字符,对组字符进行操作)
  • 6.富文本里面,是如何做到划词的(鼠标滑动选择一组字 符,对组字符进行操作)?
  • 7.如何做好前端监控方案
  • 8.如何标准化处理线上用户反馈的问题
  • 9.px 如何转为 rem
  • 10.浏览器有同源策略,但是为何 cdn 请求资源的时候不会有跨域限制
  • 11.cookie 可以实现不同域共享吗
  • 12.axios 是否可以取消请求
  • 13.前端如何实现折善面板效果?
  • 14.dom 里面,如何判定a元素是否是b元素的子元
  • 15.判断一个对象是否为空,包含了其原型链上是否有自定义数据或者方法。该如何判定?
  • 16.js如何判空?「空」包含了:空数组、空对象、空字符 串、0、undefined、nul、空 map、空set,都属于为空
  • 数据
  • 17.css 实现翻牌效果
  • 18.flex:1代表什么
  • 19.一般是怎么做代码重构的
  • 20.如何清理源码里面没有被应用的代码,主要是JS、TS、 CSS 代码
  • 21.前端应用 如何做国际化?
  • 22.应用如何做应用灰度发布
  • 23.[微前端] 为何通常在 微前端 应用隔离不选择 iframe 万案
  • 24.[微前端] Qiankun 是如何做 JS 隔离的
  • 25.「微前端]微前端架构一般是如何做 JavaScript隔离
  • 26.[React]循环渲染中 为什么推荐不用 index 做 key
  • 27.[React]如何避免使用 context 的时候,引起整个挂载节 点树的重新渲染!
  • 28.前端如何实现截图?
  • 29.当QPS达到峰值时,该如何处理?
  • 30.js 超过 Number 最大值的数怎么处理?
  • 31.使用同一个链接,如何实现 PC 打开是 web 应用、手机打 开是一个 H5 应用?
  • 32.如何保证用户的使用体验
  • 33.如何解决页面请求接口大规模并发问题
  • 34.设计一套全站请求耗时统计工具
  • 35.大文件上传了解多少
  • 36.H5 如何解决移动端适配问题
  • 37.站点一键换肤的实现方式有哪些?
  • 38.如何实现网页加载进度条?
  • 39.常见图片懒加载方式有哪些?
  • 40.cookie 构成部分有哪些
  • 41.扫码登录实现方式
  • 42.DNS 协议了解多少
  • 43.函数式编程了解多少?
  • 44.前端水印了解多少?
  • 45.什么是领域模型
  • 46.一直在 window 上面挂东西是否有什么风险
  • 47.深度 SEO优化的方式有哪些,从技术层面来说
  • 48.小程序为什么会有两个线程
  • 49.web 应用中如何对静态资源加载失败的场景做降级处理
  • 50.html中前缀为>

    JavaScript

    1. 不会冒泡的事件有哪些?
    2. mouseEnter 和mouseOver 有什么区别?
    3. MessageChannel是什么,有什么使用场景?
    4. async、 await 实现原理
    5. Proxy能够监听到对象中的对象的引用吗?
    6. 如何让 var [a, b] = {a: 1, b: 2} 解构赋值成功?
    7. 下面代码会输出什么?
    8. 描述下列代码的执行结果
    9. 什么是作用域链?
    10. bind、call、apply有什么区别?如何实现一个bind?
    11. common.js和es6中模块引l入的区别?
    12. 说说vue3 中的响应式设计原理
    13. script标签放在header里和放在body底部里有什么区别?
    14. 下面代码中,点击”+3”按钮后,age的值是什么?
    15. Vue中,created和mounted两个钩子之间调用时间差值受什么影响?
    16. vue中,推荐在哪个生命周期发起请求?
    17. 不会冒泡的事件有哪些?
    18. mouseEnter 和mouseOver 有什么区别?
    19. 为什么Node在使用es module时必须加上文件扩展名?
    20. package.json文件中的 devDependencies和dependendes对象有什么区别?
    21. React Portals 有什么用?
    22. react 和 react-dom是什么关系?
    23. MessageChannel是什么,有什么使用场景?
    24. React 中为什么不直接使用requestIdleCallback?
    25. 为什么react需要 fiber 架构,而Vue 却不需要?

    CSS

    1. css 中的 animation、transition,transform有什么区别?
    2. 怎么做移动端的样式适配?
    3. 相邻的两个inline-block节点为什么会出现间隔,该何解决?
    4. grid网格布局是什么?
    5. CSS3新增了哪些特性?
    6. 怎么使用cSS3实现动画?
    7. 怎么理解回流跟重绘?什么场景下会触发?
    8. 什么是响应式设计?响应式设计的基本原理是什么?如何进行实现?
    9. 如果使用CSs提高页面性能?
    10. 如何实现单行/多行文本溢出的首略样式?
    11. 如何使用css完成视差滚动效果?
    12. 怎么使用CSS 如何画一个三角形
    13. 说说对CSS 工程化的理解
    14. 怎么触发BFC,BFC有什么应用场景?
    15. 单行文本怎么实现两端对齐?
    16. 说说你对 CSS 模块化的理解
    17. CSS 模块化的实现方式
    18. 怎么让Chrome支持小于12px 的文字?
    19. 怎么让Chrome支持小于12px的文字?
    20. flexbox(弹性盒布局模型)是什么,适用什么场景?
    21. 如何实现两栏布局,右侧自适应?三栏布局中间自适应呢?
    22. 设备像素、css像素、设备独立像素、dpr、ppi 之间有什么区别?

    HTML

    1. 什么是DOM和 BOM?
    2. 简单描述从输入网址到页面显示的过程
    3. 一台设备的dpr,是否是可变的?
    4. 前端效如何选择图片的格式?
    5. 前端跨页面通信,你道哪些方法?
    6. 说说你对Dom树的理解
    7. 行内元素有哪些?块级元素有哪些?空(void)元素有那些?
    8. htm和css中的图片戏与渲染规则是什么样的?
    9. title与h1的区别、b与strong的区别、与em的区别?
    10. script标签为什么建议放在 body标签的底部(defer、async)
    11. 说说你对 SSG 的理解
    12. 什么是HTML5,以及和HTML的区别是什么?
    13. 什么是渐进增虽和优雅降级?
    14. Node 和Element 是什么关系?
    15. 导致页面加载白屏时间长的原因有哪些,怎么进行优化?
    16. 如何控制input输入框的输入字数?
    17. 渐进式jpg有了解过吗?
    18. 假设我要上传图片,怎么在选择图片后,通过浏览器预览待上传的图片?

    React

    1. 下面代码中,点击”+3”按钮后,age的值是什么?
    2. React Portals 有什么用?
    3. react和react-dom是什么关系?
    4. React 中为什么不直接使用 requestIdleCallback?
    5. 为什么react 需要 fiber 架构,而Vue 却不需要?
    6. 子组件是一个Portal,发生点击事件能冒泡到父组件吗?
    7. React 为什么要废弃componentWillMount、componentWillReceiveProps、componentWillUpdate这三个生命周期钩子?它们有哪些问题呢?React又是如何解决的呢?
    8. 说说React render方法的原理?在什么时候会被触发?
    9. 说说React事件和原生事件的执行顺序
    10. 说说对受控组件和非受控组件的理解,以及应用场景?
    11. 你在React项目中是如何使用Redux的?项目结构是如何划分的?
    12. 说说对Redux中间件的理解?常用的中间件有哪些?实现原理?
    13. 说说你对Redux的理解?其工作原理?
    14. 说说你对immutable的理解?如何应用在react项目中?
    15. 说说React Jsx转换成真实DOM过程?
    16. 说说你在Reac项目是如何捕获错误的?
    17. 说说React服务端宣染怎么做?原理是什么?
    18. ReactFiber是如何实现更新过程可控?
    19. Fiber 为什么是React 性能的一个飞跃?
    20. setState是同步,还是异步的?

    Vue

    1. Vue 有了数据响应式,为何还要diff?
    2. vue3为什么不需要时间分片?
    3. vue3为什么要引入Composition API?
    4. 谈谈 Vue 事件机制,并手写on、on、on、off、emit、emit、 emit、once
    5. computed计算值为什么还可以依赖另外一个computed计算值?
    6. 说一下vm.$set 原理
    7. 怎么在Vue 中定义全局方法?
    8. Vue中父组件怎么监听到子组件的生命周期?
    9. vue组件里写的原生addEventListeners监听事件,要手动去销毁吗?为什么?
    10. 说说vue3中的响应式设计原理
    11. Vue中,created和mounted两个钩子之间调用时间差值受什么影响?
    12. vue中,推荐在哪个生命周期发起请求?
    13. 为什么react 需要 fiber 架构,而 Vue 却不需要?
    14. SPA(单页应用)首屏加戏速度慢怎么解决?
    15. 说下Vite的原理
    16. Vue2.0为什么不能检查数组的变化,该怎么解决?
    17. 说说Vue 页面渲染流程
    18. vue中computedfDwatch区别
    19. vuex中的辅助函数怎么使用?
    20. 如果使用Vue3.0实现一个Modal,你会怎么进行设计?
    21. Vue 3.0中Treeshaking特性是什么,并举例进行说明?
    22. Vue3.0所采用的Composition Api与Vue2.x使用的Options Api有什么不同?
    23. Vue3.0性能提升主要是通过哪几方面体现的?
    24. Vue3.0的设计目标是什么?做了哪些优化?
    25. 你是怎么处理vue项目中的错误的?

    算法

    1. 最大的钻石
    2. 举例说明你对尾递归的理解,以及有哪些应用场景
    3. 去除字符串中出现次数最少的字符,不改变原字符串的顺序。
    4. 请手写”快速排序”
    5. 洗牌算法
    6. 什么是尾调用优化和尾递归?
    7. 合并K个升序链表
    8. 什么是时间复杂度?
    9. 请手写“基数排序”

    TypeScript

    1. 说说对 TypeScript 中命名空间与模块的理解?区别?
    2. 说说你对 typescript 的理解?与javascript 的区别?
    3. Typescript中泛型是什么?
    4. TypeScript中有哪些声明变量的方式?
    5. 什么是Typescript的方法重载?
    6. 请实现下面的 sleep 方法
    7. typescript 中的 is 关键字有什么用?
    8. TypeScrip支持的访问修饰符有哪些?
    9. 请实现下面的 myMap 方法
    10. 请实现下面的 treePath方法
    11. 请实现下面的 product 方法
    12. 请实现下面的 myAll 方法
    13. 请实现下面的 sum 方法
    14. 请实现下面的 mergeArray 方法
    15. 实现下面的 firstSingleChar 方法
    16. 实现下面的 reverseWord 方法
    17. 如何定义一个数组,它的元紊可能是字符串类型,也可能是数值类型?
    18. 请补充 objToArray数

    注:篇幅所限本文就只贴一下题目了,文中的前端场景面试题汇总PDF已经打包完毕,希望对大家有帮助:

    https://github.com/encode-studio-fe-coder/natural_traffic/wiki/scan_material


    35 岁的前端开发,从来不该是职场的 “淘汰标签”,这次求职碰壁,与其说是年龄带来的困境,不如说是自己在舒适区里停留太久,忽略了行业的快速迭代,也没及时补齐技术短板和深度。八年的项目经验是底气,但不能成为固步自封的理由,前端行业从来不是只看工龄,更看技术的新鲜度、解决复杂问题的能力,以及是否能从 “执行层” 向 “思考层” 转变。接下来的日子,沉下心补全薄弱的技术点,跳出单纯的开发思维,学着站在项目和产品的角度思考问题,相信年龄带来的经验和沉淀,终会成为另一种优势。35 岁的职场路,或许有坎坷,但从来都不是终点,重新出发,依旧有机会。

http://www.jsqmd.com/news/313422/

相关文章:

  • ‌从被裁员到被挖角:我的AI转型日记
  • Transformer 大模型架构深度解析(4)详解 Transformer 架构
  • 2026养发加盟新趋势:如何选择靠谱品牌?
  • TDengine 脱敏函数用户手册
  • 2026国内最新汽车胶公司top5推荐!优质高端定制/防水型汽车胶厂商权威榜单发布,技术创新与品质保障助力汽车制造升级
  • 用 Java 搞 AI:自主开发 + 生态复用才是长期竞争力
  • 浮点数在内存中的存储
  • Java 企业 AI 转型:大模型多端接入与落地实践
  • Pipelined ADC流水线模数转换器的工作原理
  • 如何在Android上恢复已删除的文件
  • 大模型应用输出结果可解释性的保障方法
  • 在小米上检索照片/视频的5种方法
  • Linux Systemd 停止服务时杀死子进程的机制及 KillMode 参数详解
  • 知识图谱如何在制造业实际落地应用
  • 2026白转黑加盟项目怎么选?关键看技术与扶持体系
  • 年省500万内幕:北京企业订国际机票别再用平台了!这4家本土供应商把亏损千万的公司变成盈利巨头
  • 2026南京遗产继承律师推荐指南
  • 学霸同款2026 TOP8 AI论文写作软件:本科生毕业论文必备测评
  • 【收藏必备】Web安全完全指南:从上网到开发,小白也能掌握的防护技巧
  • 程序员转行网络安全必备:三大基础工具实战指南(附案例+简历技能点,建议收藏)
  • 科技新助力
  • ‌别再手动对比日志了!AI日志分析工具实测TOP3
  • 基于CNN的陕西降雨量气象分析-大数据深度学习算法毕设毕业设计项目Flask
  • 2026版最新黑客网站整理大全,全新整理黑客网站大全!收藏这一篇就够了
  • 2026年最适合初学者练手的10个网络安全项目,收藏这篇就够了!
  • 【2026最新版】计算机专业自学指南:从大一到大四步步为营,收藏这一篇就够了
  • 2026工业秤头部品牌厂家(综合实力强,产品线完整)
  • 零基础转行大模型:3个月入门+项目变现,程序员必藏的学习路径
  • 机箱机柜钣金加工厂家综合能力对比
  • 【干货】网络安全面试高频题:零基础也能答的通关秘籍,建议收藏