自学前端踩了30个坑,终于整理出这份新手避坑指南
zhezhongyun 2025-08-02 22:43 42 浏览
这是我在自学前端的第37天,对着一个简单的HTML页面卡了整整一下午。
不是逻辑错误,不是语法问题,只是我不知道为什么,一个 div 死活居中不了。
那时候的我,以为前端就是写写页面、调调样式,直到后来才发现,前端远不止“看得见”的那部分。
从 HTML 到 CSS,从 JavaScript 到 Webpack、ESLint、Git 规范、组件封装……我一步步踩坑、一步步成长。
今天我把这一路上整理的资料、笔记、学习路径都整理了出来,希望能帮到和当初我一样迷茫的你。
这不是速成班,也不是速成指南,而是一份真实前端成长路上的必备资料包。
有需要的小宝可以自取【资料】
简述内容
八股文
高频场景题
简历
看视频高效刷题(精品233问)
大厂名师公开课合集(每周更新)
前端推荐书单
常用工具/辅助内容/优秀源码拓展
优秀开源项目分享 等~
1.JavaScript(323题)
1.不会冒泡的事件有哪些?
参考答案:
在JavaScript和浏览器中,绝大多数事件都会按照DOM事件流模型冒泡,即事件会从目标元素开始向上冒泡到它的父元素,并最终到达文档元素。然而,也有一些事件是不会冒泡的。这些事件通常直接在目标元素上触发,并不会向上传播。
以下是一些不会冒泡的事件的示例:
1.焦点:当元素获得焦点时触发,例如通过键盘或鼠标点击。这是一个不会冒泡的事件。
2.模糊:当元素失去焦点时触发。这也是一个不会冒泡的事件。等~
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 有什么区别?如何实现-...
2.Css(61题)
1.css 中的 animation、transition、 transform ...
参考答案:
在 CSS 中,
transition 和 transform 是用来创建动画效果的关键属性,它们各自具有不同的animation
作用和特点。
animation :
1.transition :
transition 属性用于指定在元素状态改变时,要以何种方式过渡到新状态。通过指定过渡的属 性、持续时间、动画方式(timing function)、延迟时间等来控制过渡效果。。
transition 属性适用于元素从一种状态平滑过渡到另一种状态,例如颜色、大小、位置等属性的变化。
2.transform :
- transform 属性用于对元素进行变形,例如平移、旋转、缩放、倾斜等通过
- transform 属性,可以改变元素的变形属性来创建动画效果。。
- transform 属性通常与 transition 或 animation 结合使用,使得变形动画更加平滑
总结:
animation 属性用于创建复杂的动画序列
transition 属性用于在状态变化时平滑过渡
transform 属性用于对元素进行变形
2.怎么做移动端的样式适配?
3.相邻的两个inline-block节点为什么会出现间.
4. grid网格布局是什么?
5.CSS3新增了哪些特性?
6.怎么使发已尸亿已尸有画?
7.怎么理解回流跟重绘?什么场景下会触发?8.什么是响应式设计?响应式设计的基本原理,
9.如果使用CSS提高页面性能?
10.如何实现单行/多行文本溢出的省略样式?
3.Typescript(46题)
1.说说对 TypeScript 中命名空间与模块的理解.
参考答案:
模块
TypeScript与ECMAScript 2015 一样,任何包含顶级 import 或者 export 的文件都被当成一个模块相反地,如果一个文件不带有顶级的 import 或者 export 声明,那么它的内容被视为全局可见的例如我们在在一个 TypeScript 工程下建立一个文件 1.ts,声明一个变量a,如下:
const a=1
然后在另一个文件同样声明一个变量 a这时候会出现错误信息
2.说说你对 typescript 的理解?与 javascript 的..
3.Typescript中泛型是什么?
4. TypeScript中有哪些声明变量的方式?
5.什么是Typescript的方法重载?
6.请实现下面的 sleep 方法
7. typescript 中的 is 关键字有什么用?
8.TypeScript支持的访问修饰符有哪些?
9.请实现下面的 myMap 方法
10.请实现下面的 treePath 方法
4.React(83题)
1.下面代码中,点击“+3”按钮后,age 的值是..
import{useState }from'react'
export default function Counter(){const [age,setAge]=useState(42);function increment(){setAge(age + 1);
return
<h1>Your age:{age}</h1><button onClick={()=>{
increment();increment();increment();
}}>+3</button>
);
参考答案:
点击 +3 时,可能只更新为 43。
这是因为 setAge(age + 1)即使多次调用,也不会立即更新组件状态,而是会进行合并,最终只触发一次重新渲染。
如果要实现调用三次就增加3,可以将increment 改为函数式更新:
function increment()f1
setAge(a=>a+1);//函数式更新
}
2. React Portals 有什么用?
3.react 和 react-dom 是什么关系?
4.React 中为什么不直接使用 requestIdleCallba...
5.为什么 react 需要 fiber 架构,而 Vue 却不需,
6.子组件是一个 Portal,发生点击事件能冒泡...
7. React 为什么要废弃 componentwillMount、c..
8.说说React render方法的原理?在什么时候会..
9.说说React事件和原生事件的执行顺序
10.说说对受控组件和非受控组件的理解,以及...
图片题
有需要的小伙伴可以点此资料获取完整版PDF
总结
前端这条路,说难不难,说简单也不简单。
从那个连 div 都居中不了的小白,到现在能独立搭建项目、优化工程化流程,我走了不少弯路,也收获了很多成长。
如果你现在也正站在前端学习的起点,别怕慢,也别怕笨,只要坚持下去,总有一天你会感谢现在努力的自己。
希望这份资料能成为你前行路上的一盏小灯,帮你少踩几个坑,多一点方向。
如果你觉得有帮助,欢迎收藏 + 关注,也欢迎在评论区和我交流你的学习经历。
你的一句“有用”,就是我继续分享的动力
有需要的小伙伴可以点此资料获取完整版PDF
相关推荐
- Opinion丨Struggle Against U.S. Mind colonization in the Global South
-
Editor'snote:Thismonth,XinhuaNewsAgency'sThinkTankreleasedareporttitled"Colonizationof...
- 爱可可AI论文推介(2020.11.4)_爱可可女装旗舰店
-
LG-机器学习CV-计算机视觉CL-计算与语言AS-音频与语音RO-机器人(*表示值得重点关注)1、[LG]*CombiningLabelPropagationan...
- 何新:罗马伪史考英文版序言_罗马史学
-
2019-10-2514:48:27何新:罗马伪史考序言(英文译本)HeXin:PreambleofResearchonPseudo-historyofRome1Afewyear...
- XPeng Stock Rises Over 4% after Q2 Revenue and EV Margin Set Records
-
TMTPOST--TheAmericandepositaryreceipts(ADRs)ofXPengInc.rosearound4.2%onTuesdayaftert...
- 英汉世界语部首(八)_英文部首字典
-
本节讲八个部首,分别是:弓gōng【ECWLrad】bow廾gǒng【ECWLrad】twen广guǎng【ECWLrad】vast己jǐ【ECWLrad】self已yǐ...
- 一课译词:划水_划水是什么地方的方言
-
[Photo/SIPA]懒惰是人类的天性,因此才总有人会在工作时“划水”。“划水【huáshuǐ】”,本意是指“用胳膊划的动作(makestrokeswithone’sarms)”,延伸为“...
- 首测!GPT-4o做Code Review可行吗?
-
编辑|言征出品|51CTO技术栈(微信号:blog51cto)近日,OpenAI一记重拳,推出了GPT-4o(“o”表示“omni”),将语音识别和对话方面的优势展示的淋漓尽致。几乎可以肯定,...
- C++|漫谈STL细节及内部原理_c++ stl详解
-
1988年,AlexanderStepanov开始进入惠普的PaloAlto实验室工作,在随后的4年中,他从事的是有关磁盘驱动器方面的工作。直到1992年,由于参加并主持了实验室主任BillWo...
- C++ inline关键字深度解析:不止于优化的头文件定义许可
-
在C++开发中,几乎每个程序员都用过inline关键字,但多数人只停留在“内联优化”的表层理解。事实上,inline的真正威力在于它打破了C++的单一定义规则(ODR)限制,成为头文件中安全定义函数的...
- 实用 | 10分钟教你搭建一个嵌入式web服务器
-
之前分享的文章中提到了几种可以在嵌入式中使用的web服务器。嵌入式web服务器就是把web服务器移植到嵌入式系统的服务器。它仍然是基于http文本协议进行通信的,具有标准的接口形式,对客户端...
- 中间语言格式_中间格式文本是什么
-
在通常情况下,编译器会将目标语言转换成某种中间语言格式,而不是直接将源代码转换成二进制机器指令,不少c语言编译器,都会将代码编译成汇编语言,然后再通过汇编语言编译器将汇编代码转换成目标机器可执行的二进...
- 一线开发大牛带你深度解析探讨模板解释器,解释器的生成
-
解释器生成解释器的机器代码片段都是在TemplateInterpreterGenerator::generate_all()中生成的,下面将分小节详细展示该函数的具体细节,以及解释器某个组件的机器代码...
- 干货,Web开发和前端开发逆天工具大全
-
微信ID:WEB_wysj(点击关注)◎◎◎◎◎◎◎◎◎一┳═┻︻▄(点击页底“阅读原文”前往下载)●●●逆天工具CDN资源库国内Bootstrap中文网开源项目免费CDN服务36...
- 移动端rem+vw适配_移动端web页面适配方案
-
rem:rem是相对单位,设置根元素html的font-size,比如给html设置字体大小为100px,1rem=100px;rem缺点:1.和根元素font-size值强耦合,系统字...
- 从零搭建 React 开发 H5 模板_react html5
-
项目创建创建项目文件夹mkdir react-democd react-demonpm init -y依赖安装yarn add rea...
- 一周热门
- 最近发表
-
- Opinion丨Struggle Against U.S. Mind colonization in the Global South
- 爱可可AI论文推介(2020.11.4)_爱可可女装旗舰店
- 何新:罗马伪史考英文版序言_罗马史学
- XPeng Stock Rises Over 4% after Q2 Revenue and EV Margin Set Records
- 英汉世界语部首(八)_英文部首字典
- 一课译词:划水_划水是什么地方的方言
- 首测!GPT-4o做Code Review可行吗?
- C++|漫谈STL细节及内部原理_c++ stl详解
- C++ inline关键字深度解析:不止于优化的头文件定义许可
- 实用 | 10分钟教你搭建一个嵌入式web服务器
- 标签列表
-
- HTML 教程 (33)
- HTML 简介 (35)
- HTML 实例/测验 (32)
- HTML 测验 (32)
- JavaScript 和 HTML DOM 参考手册 (32)
- HTML 拓展阅读 (30)
- HTML文本框样式 (31)
- HTML滚动条样式 (34)
- HTML5 浏览器支持 (33)
- HTML5 新元素 (33)
- HTML5 WebSocket (30)
- HTML5 代码规范 (32)
- HTML5 标签 (717)
- HTML5 标签 (已废弃) (75)
- HTML5电子书 (32)
- HTML5开发工具 (34)
- HTML5小游戏源码 (34)
- HTML5模板下载 (30)
- HTTP 状态消息 (33)
- HTTP 方法:GET 对比 POST (33)
- 键盘快捷键 (35)
- 标签 (226)
- HTML button formtarget 属性 (30)
- opacity 属性 (32)
- transition 属性 (33)