数据结构与算法
这一块在笔试、面试的代码题中考核较多,其中常考的数据结构主要有:数组、链表、队列、栈、Set、Map、哈希表等,不同数据结构有不同的方法以及储存原理,这些算是技术岗的必备知识。算法部分主要分为两大块,排序算法与一些其他算法题。
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
排序算法根据考频高低主要有:快速排序、归并排序、堆排序、冒泡排序、插入排序、选择排序、希尔排序、桶排序、基数排序、Timsort这十种,这类考核点要么是算法的时间、空间复杂度、稳定度,要么是直接手写代码,故在理解算法原理的同时,对JS语言版的排序算法代码也要加强记忆。
- 二叉树层序遍历
- B 树的特性,B 树和 B+树的区别
- 尾递归
- 如何写一个大数阶乘?递归的方法会出现什么问题?
- 把多维数组变成一维数组的方法
- 知道的排序算法 说一下冒泡快排的原理
- Heap 排序方法的原理?复杂度?
- 几种常见的排序算法,手写
- 数组的去重,尽可能写出多个方法
- 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
- 知道数据结构里面的常见的数据结构
- 找出数组中第 k 大的数组出现多少次,比如数组【1,2, 4,4,3,5】第二大的数字是 4,出现两次,所以返回 2
- 合并两个有序数组
- 给一个数,去一个已经排好序的数组中寻找这个数的位 置(通过快速查找,二分查找)
- 《TypeScript 实战》
阶段五:框架和学习边界进阶
通过阶段三,你已经掌握了前端框架的基本使用,开发一个完整项目的流程。那么在框架和学习边界进阶阶段,你就可以:
-
学习框架周边的生态,社区总结出来的优秀组件,以及各种好用的工具库。
-
造一些自己的轮子,使用框架搭建自己的开源项目
-
学习 Webpack,Gulp,Babel,ESLint 等工具的使用、思想和原理
-
带着问题去阅读框架源码,学习性能优化
-
养成良好的编程习惯
-
扩展技术边界,学习 Node.js 等后端相关技能
-
……
对于这里的源码阅读我要强调一点,阅读源码不是说让你去读懂例如 React 框架的每一行代码,而是结合其代码整体逻辑加上部分细节分析,理解其实现和工作原理,以帮助你更好地理解其设计理念,更好地使用它开发项目,并避免错误地使用。而且现在社区有很多源码分析文章,你可以将源码阅读和多篇分析文章结合起来,理解起代码来会事半功倍。
推荐阅读书籍:
以下推荐的书籍都是比较出名的书籍,你可以根据自己的技能树,选择所需要的书籍进行阅读。并不是一字不差地整本阅读,而是在每本书中学习自己所需要的部分。很多都是非常著名的好书,有精力尽量买来学习。
Webpack 相关:
-
《深入浅出 Webpack》
-
《Webpack 实战:入门、进阶与调优》
React 相关:
-
《深入 React 技术栈》
-
《深入浅出 React 和 Redux》
-
《Redux 实战》
-
《React 学习手册》
-
《React 快速上手开发》
-
《React 设计模式与最佳实践》
Vue 相关:
-
《Vue.js 实战》
-
《Vue.js 开发实战》
-
《深入浅出 Vue.js》
-
《Vue.js 权威指南》
-
《Vue.js 从入门到项目实战》
-
《Vue.js 前端开发基础与项目实战》
-
《Vue.js 项目开发实战》
-
《Vue.js 快速入门》
-
《Vue.js 前端开发》
Node.js 相关:
-
《狼书卷1》
-
《狼书卷2》
-
《Node 学习指南》
-
《了不起的 Node.js》
-
《深入浅出 Node.js》
-
《Node.js 实战》
-
《Node.js 开发指南》
-
《Node 即学即用》
-
《Node 与 Express 开发》
样式和布局相关:
-
《Bootstrap 实战》
-
《Bootstrap 用户手册》
-
《响应式 Web 设计:HTML5 与 CSS3 实战》
性能相关:
-
《Web 性能权威指南》
-
《高性能网站建设指南》
PWA 相关:
-
《PWA 开发实战》
-
《PWA 实战:面向下一代的 Progressive Web APP》
其他:
-
《SVG 精髓》
-
《深入理解 SVG》
-
《前端架构设计》
-
《重构:改善既有代码的设计》
-
《同构 JavaScript 应用开发》
阶段六:计算机基础知识进阶
编程编程,万变不离其宗,那就是计算机基础知识,算法、数据结构、计算机原理、网络等内容。在这里我只推荐最经典的好书,每一本都是必读书籍。学好这些内容,大厂任你选。
数据结构和算法:
-
《剑指offer》
-
《程序员面试金典(第 6 版)》
-
《编程之美》
-
《漫画算法》
-
《算法图解》
-
《程序员代码面试指南》
-
《大话数据结构》
-
《趣学算法》
-
《学习 JavaScript 数据结构与算法》
-
《数据结构与算法:JavaScript 描述》
-
《算法(第四版)》
-
《算法导论》
-
《算法竞赛入门经典(第二版)》
-
《算法竞赛入门经典 训练指南》
css
1,盒模型
2,如何实现一个最大的正方形
3,一行水平居中,多行居左
4,水平垂直居中
5,两栏布局,左边固定,右边自适应,左右不重叠
6,如何实现左右等高布局
7,画三角形
8,link @import导入css
9,BFC理解
js
1,判断 js 类型的方式
2,ES5 和 ES6 分别几种方式声明变量
3,闭包的概念?优缺点?
4,浅拷贝和深拷贝
5,数组去重的方法
6,DOM 事件有哪些阶段?谈谈对事件代理的理解
7,js 执行机制、事件循环
8,介绍下 promise.all
9,async 和 await,
10,ES6 的 class 和构造函数的区别
11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式,
12,介绍一下rAF(requestAnimationFrame)
13,javascript 的垃圾回收机制讲一下,
14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
7,js 执行机制、事件循环
8,介绍下 promise.all
9,async 和 await,
10,ES6 的 class 和构造函数的区别
11,transform、translate、transition 分别是什么属性?CSS 中常用的实现动画方式,
12,介绍一下rAF(requestAnimationFrame)
13,javascript 的垃圾回收机制讲一下,
14,对前端性能优化有什么了解?一般都通过那几个方面去优化的?
[外链图片转存中…(img-zLY0UVNS-1715401208174)]