非科班出身字节跳动前端offer,我有一份50000字面试宝典分享给你!

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
img

正文

是的,我的字节跳动面试顺利,这一面算法没有难倒我,基本上看到题目我就能想出解法。虽然我简历上的项目偏简单了点,但好在我有好好总结和复盘(最终有惊无险拿到了offer!)………

学习经历及经验

面试经验分享

准备阶段

在面试之前,可能很多人会跟我一样感到焦虑,觉得自己还没准备好,想多复习一些东西,可越复习越感觉自己不会的东西更多,从而迟迟不敢出去面试。这其实是个悖论,原因就在于技术本身就是学不完的,此时我们需要好好调整一下自己的心态,做两手准备:

  • 划清知识体系和边界
  • 给自己安排一个截止日期(deadline)

准备时间是有限的,我们需要做的就是利用有限的时间达到最大效益的产出,因此尽量地做一些复习巩固和查漏补缺,发挥自己的优势,而不要去为了面试学新技术,或者深挖自己从未涉猎的领域。我根据自己目前的实际水平,制定了这样一份面试知识体系:

其实当时有些知识并没有完全掌握,但是又需要出去面试,所以给了自己一个截止日期,在 3 月 10 号之前,尽全力准备,到了 deadline,无论如何都要投简历出去。这样,后面的一系列面试就顺理成章了,没有拖得太久,同时准备的还不错。

另外,关于前端面试基础知识以及计算机基础,我已经在博客里面面试题做了系统的梳理和给出了参考解析,下面给大家一些已经产出的内容,让大家可以完整地学习:

第一章 HTML(★★)

1.浏览器页面有哪三层构成,分别是什么,作用是什么?

2.HTML5的优点与缺点?

3.Doctype作用? 严格模式与混杂模式如何区分?它们有何意义?

4.HTML5有哪些新特性、移除了哪些元素?

5.你做的网页在哪些浏览器测试过,这些浏览器的内核分别是什么?

6.每个HTML文件里开头都有个很重要的东西,Doctype,知道这是干什么的吗?

7.说说你对HTML5认识?(是什么,为什么)

8.对WEB标准以及W3C的理解与认识?.

9.HTML5行内元素有哪些,块级元素有哪些, 空元素有哪些?.

10.什么是WebGL,它有什么优点?.

11.请你描述一下 cookies,sessionStorage 和 localStorage 的区别?.

12.说说你对HTML语义化的理解?.

13.link和@import的区别?.

14.说说你对SVG理解?.

15.HTML全局属性(global attribute)有哪些?.

16.说说超链接target属性的取值和作用?

17.data-属性的作用是什么?

18.介绍一下你对浏览器内核的理解?

19.常见的浏览器内核有哪些?

20.iframe有那些缺点?

21.Label的作用是什么,是怎么用的?

22.如何实现浏览器内多个标签页之间的通信?.

23.如何在页面上实现一个圆形的可点击区域?

24.title与h3的区别、b与strong的区别、i与em的区别?

25.实现不使用 border 画出1px高的线,在不同浏览器的标准模式与怪异模式下都能保持一致的效果?

26.HTML5标签的作用?(用途)

27.简述一下src与href的区别?

28.谈谈你对canvas的理解?

29.WebSocket与消息推送?

30.mg的title和alt有什么区别?

31.表单的基本组成部分有哪些,表单的主要用途是什么?

32.表单提交中Get和Post方式的区别?

33.HTML5 有哪些新增的表单元素?

34.HTML5 废弃了哪些 HTML4 标签?

35.HTML5 标准提供了哪些新的 API?

36.HTML5 存储类型有什么区别?

37.HTML5 应用程序缓存和浏览器缓存有什么区别?

38.HTML5 Canvas 元素有什么用?

39.除了 audio 和 video,HTML5 还有哪些媒体标签?

40.HTML5 中如何嵌入视频?

41.HTML5 中如何嵌入音频?

42.新的 HTML5 文档类型和字符集是?

第二章 CSS (★★★)

  1. 解释一下CSS的盒子模型?

  2. 请你说说CSS选择器的类型有哪些,并举几个例子说明其用法?

3请你说说CSS有什么特殊性?(优先级、计算特殊值)

4要动态改变层中内容可以使用的方法?

  1. 常见浏览器兼容性问题与解决方案?

  2. 列出display的值并说明他们的作用?

  3. 如何居中div, 如何居中一个浮动元素?

  4. CSS中 link 和@import 的区别是?

  5. 请列举几种清除浮动的方法(至少两种)?

  6. block,inline和inlinke-block细节对比?

  7. 什么叫优雅降级和渐进增强?

  8. 说说浮动元素会引起的问题和你的解决办法.

13.你有哪些性能优化的方法?

14.为什么要初始化CSS样式?

15.解释下浮动和它的工作原理?清除浮动的技巧?

16.CSS样式表根据所在网页的位置,可分为哪几种样式表?

17.谈谈你对CSS中刻度的认识?

18.请你说说em与rem的区别?

19.请你说说box-sizing属性的的用法?

20.浏览器标准模式和怪异模式之间的区别是什么?

21.怪异Quirks模式是什么,它和标准Standards模式有什么区别?

22.说说你对边距折叠的理解?

23.内联与块级标签有何区别?

24.说说隐藏元素的方式有哪些?

25.为什么重置浏览器默认样式,如何重置默浏览器认样式?

26.谈谈你对BFC与IFC的理解?(是什么,如何产生,作用)

27.说说你对页面中使用定位(position)的理解?

28.如何解决多个元素重叠问题?

29.页面布局的方式有哪些?

30.overflow :hidden是否形成新的块级格式化上下文?

第三章 前端基础 (★★★)

1.说一下http和https. 55

2.tcp三次握手,一句话概括

3.TCP和UDP的区别

4.WebSocket的实现和应用

5.HTTP请求的方式,HEAD方式

6.一个图片url访问后直接下载怎样实现?

7.说一下web Quality(无障碍)

8.几个很实用的BOM属性对象方法?

9.说一下HTML5 drag api

10.说一下http2.0

11.补充400和401、403状态码

12.fetch发送2次请求的原因

13.Cookie、sessionStorage、localStorage的区别

14说一下web worker

15.对HTML语义化标签的理解

16.iframe是什么?有什么缺点?

17.Doctype作用?严格模式与混杂模式如何区分?它们有何意义?

18.Cookie如何防范XSS攻击

19.Cookie和session的区别

20.一句话概括RESTFUL

21.讲讲viewport和移动端布局

22.click在ios上有300ms延迟,原因及如何解决?

23.addEventListener参数

24.cookie sessionStorage localStorage区别

25.cookie session区别

26.介绍知道的http返回的状态码

27.http常用请求头

28.强,协商缓存

29.HTTP状态码说说你知道的

30.讲讲304

31.前端优化

32.GET和POST的区别

33.301和302的区别

34.HTTP支持的方法

35.如何画一个三角形

36.状态码304和 200

37.说一下浏览器缓存

38.HTML5新增的元素

39.在地址栏里输入一个URL,到这个页面呈现出来,中间会发生什么?

40.cookie和session的区别,localstorage和sessionstorage的区别

41.常见的HTTP的头部

42.HTTP2.0 的特性

43.cache-control的值有哪些

44.浏览器在生成页面的时候,会生成那两颗树?

45.csrf和xss的网络攻击及防范

46.怎么看网站的性能如何

47.介绍HTTP协议(特征)

48.输入URL到页面加载显示完成发生了什么?

49.说一下对Cookie和Session的认知,Cookie有哪些限制?

50.描述一下XSS和CRSF攻击?防御方法?

51.知道304吗,什么时候用304?

52.具体有哪些请求头是跟缓存相关的

53.cookie和session的区别

54.cookie有哪些字段可以设置

55.cookie有哪些编码方式?

56.既然你看过图解http,那你回答下200和304的区别

57.除了cookie,还有什么存储方式。说说cookie和localStorage的区别

58.浏览器输入网址到页面渲染全过程

59.HTML5和CSS3用的多吗?你了解它们的新属性吗?有在项目中用过吗?

60.HTTP状态码

61.http常见的请求方法

62.get和post的区别

63.说说302,301,304的状态码

64.web性能优化

65.浏览器缓存机制

66.post和get区别

67.说一下css盒模型

68.画一条0.5px的线

69.link标签和import标签的区别

70.transition和animation的区别

71.Flex布局

72.BFC(块级格式化上下文,用于清楚浮动,防止margin重叠等)

73.垂直居中的方法

74.关于js动画和css3动画的差异性

75.说一下块元素和行元素

76.多行元素的文本省略号

77.visibility=hidden, opacity=0,display:none

78.双边距重叠问题(外边距折叠)

79.position属性 比较

80.浮动清除

81.css3新特性

82.CSS选择器有哪些,优先级呢

83.清除浮动的方法,能讲讲吗

84.怎么样让一个元素消失,讲讲

85.介绍一下盒模型

86.position相关属性

87.css动画如何实现

88.如何实现图片在某个容器中居中的?

89.如何实现元素的垂直居中

90.CSS3中对溢出的处理

91.float的元素,display是什么

92.隐藏页面中某个元素的方法

93.三栏布局的实现方式,尽可能多写,浮动布局时,三个div的生成顺序有没有影响

94.什么是BFC

95.calc属性

96.有一个width300,height300,怎么实现在屏幕上垂直水平居中

97.display:table和本身的table有什么区别

98.position属性的值有哪些及其区别

99.z-index的定位方法

100.CSS盒模型

101.如果想要改变一个DOM元素的字体颜色,不在它本身上进行操作?

102.对CSS的新属性有了解过的吗?

103.用的最多的css属性是啥?

104.line-height和height的区别

105.设置一个元素的背景颜色,背景颜色会填充哪些区域?

106.知道属性选择器和伪类选择器的优先级吗

107.inline-block、inline和block的区别;为什么img是inline还可以设置宽高

108.用css实现一个硬币旋转的效果

109.了解重绘和重排吗,知道怎么去减少重绘和重排吗,让文档脱离文档流有哪些方法

110.CSS画正方体,三角形

111.overflow的原理

112.清除浮动的方法

113.box-sizing的语法和基本用处

114.使元素消失的方法有哪些?

115.两个嵌套的div,position都是absolute,子div设置top属性,那么这个top是相对于父元素的哪个位置定位的。

116.说说盒子模型

117.display

118.怎么隐藏一个元素

119.display:none和visibilty:hidden的区别

120.相对布局和绝对布局,position:relative和obsolute。

121.flex布局

122…block、inline、inline-block的区别。

123.css的常用选择器

124.css布局

125.css定位

126.relative定位规则

127.垂直居中

128.css预处理器有什么

129.get请求传参长度的误区

130.补充get和post请求在缓存方面的区别

131.说一下闭包

132.说一下类的创建和继承

133.如何解决异步回调地狱

134.说说前端中的事件流

135.如何让事件先冒泡后捕获

136.说一下事件委托

137.说一下图片的懒加载和预加载

138.mouseover和mouseenter的区别

139.js的new操作符做了哪些事情

140.改变函数内部this指针的指向函数(bind,apply,call的区别)

141.js的各种位置,比如clientHeight,scrollHeight,offsetHeight ,以及scrollTop, offsetTop,clientTop的区别?

142.js拖拽功能的实现

143.异步加载js的方法

144.Ajax解决浏览器缓存问题

145.js的节流和防抖

146.JS中的垃圾回收机制

147.eval是做什么的

148.如何理解前端模块化

149.说一下Commonjs、AMD和CMD

150.对象深度克隆的简单实现

151.实现一个once函数,传入函数参数只执行一次

152.将原生的ajax封装成promise

153.js监听对象属性的改变

154.如何实现一个私有变量,用getName方法可以访问,不能直接访问

155.=、以及Object.is的区别

156.setTimeout、setInterval和requestAnimationFrame之间的区别

157.实现一个两列等高布局,讲讲思路

158.自己实现一个bind函数

159.用setTimeout来实现setInterval

160.用setTimeout来实现setInterval

161.代码的执行顺序

162.如何实现sleep的效果(es5或者es6)

163.简单的实现一个promise

164.Function.proto(getPrototypeOf)是什么?

165.实现js中所有对象的深度克隆(包装对象,Date对象,正则对象)

166.简单实现Node的Events模块

167箭头函数中this指向举例

168.js判断类型

169.数组常用方法

170.数组去重

171.闭包 有什么用

❤️篇幅有限,更详细的内容点击我获取完整版pdf查看❤️

第四章 前端核心(★★★★★)

1.JavaScript 有几种类型

2.深浅拷贝

3.作用域

4.原型和继承

5.new和this

6.apply、call、bind

7.数据处理

8.Event Loop

9.浏览器页面渲染过程

10.JSONP的缺点

11.跨域(jsonp,ajax)

12.如何实现跨域

总结

  • 框架原理真的深入某一部分具体的代码和实现方式时,要多注意到细节,不要只能写出一个框架。

  • 算法方面很薄弱的,最好多刷一刷,不然影响你的工资和成功率😯

  • 在投递简历之前,最好通过各种渠道找到公司内部的人,先提前了解业务,也可以帮助后期优秀 offer 的决策。

  • 要勇于说不,对于某些 offer 待遇不满意、业务不喜欢,应该相信自己,不要因为当下没有更好的 offer 而投降,一份工作短则一年长则 N 年,为了幸福生活要慎重选择!!!

喜欢这篇文章文章的小伙伴们点赞+转发支持,你们的支持是我最大的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
式时,要多注意到细节,不要只能写出一个框架。

  • 算法方面很薄弱的,最好多刷一刷,不然影响你的工资和成功率😯

  • 在投递简历之前,最好通过各种渠道找到公司内部的人,先提前了解业务,也可以帮助后期优秀 offer 的决策。

  • 要勇于说不,对于某些 offer 待遇不满意、业务不喜欢,应该相信自己,不要因为当下没有更好的 offer 而投降,一份工作短则一年长则 N 年,为了幸福生活要慎重选择!!!

喜欢这篇文章文章的小伙伴们点赞+转发支持,你们的支持是我最大的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
[外链图片转存中…(img-Z7YGj8DZ-1713102163979)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值