缺什么补什么:你的页面是死的还是活的
很多从 HTML 和 CSS 转过来的人,最容易卡在“页面是静态的”这个瓶颈上。你切图很漂亮,排版也符合标准,但只要用户一点击按钮,或者一提交表单,页面就毫无反应。这门 JavaScript 基础入门课解决的就是这个核心问题:怎么给写死的网页加上交互逻辑。它不会带你深入闭包底层原理或者复杂的异步编程,而是直接把你按在浏览器控制台和代码编辑器面前,教你用最基础的脚本去操作网页元素。适合那些已经能熟练写网页骨架和样式,但完全没碰过脚本语言,或者之前看语法书觉得太抽象、一写代码就大脑空白的技术学习者。如果你正处于前端转岗的阵痛期,或者需要快速查漏补缺补齐交互这块短板,建议先从“初识事件和 DOM”这块看起,这是让网页动起来的物理抓手,比死记变量类型更直观。
配套练习:别光看视频,去控制台把元素点出来
学这门课最忌讳的就是只看不动。JavaScript 的基础语法如果不结合具体的网页元素去练,跟背英语单词没区别。资料里的线索已经指明了方向:从在 VS Code 里建立脚本文件,到在浏览器的 Console 面板里直接敲代码验证。建议的练习方式是,自己先随便写一个包含按钮、输入框和 div 容器的静态页面,然后跟着视频去复现操作。比如讲到修改 CSS 属性值时,你立刻暂停视频,自己在编辑器里写一段脚本,点击按钮把 div 的背景色改掉,再去浏览器里刷新验证。讲到操作表单 Input 文本框时,试着写一个获取用户输入内容并用弹窗显示出来的小功能。资料里的代码片段和示例不是为了让你抄一遍,而是当作参照物,你要用它来对照自己写的逻辑哪里报错了,为什么没拿到元素的值,是不是页面还没加载完就去执行了脚本,从而理解 window.onload 这种加载时机的问题。
学完能独立做什么:交出一份能交互的表单页
看完这门课,你不一定能立刻去写复杂的工程化项目,但你能独立完成以前必须求助于后端或者别人才能做的页面交互。具体来说,你应该能独立写出一个完整的用户注册表单验证逻辑:当用户点击提交按钮时触发事件,读取各个 Input 文本框里的内容,判断是否为空,如果不符合要求就动态修改某个 div 容器的文字和 CSS 样式来显示红色的错误提示,如果符合要求再允许提交。你能清楚地回答几个关键问题:浏览器是如何解析执行这段脚本的?你怎么在代码里精准拿到页面上某个特定的标签?给按钮绑定点击事件的具体写法是什么?页面文档加载顺序和脚本执行顺序冲突时该怎么处理?把这些最底层的 DOM 操作和事件响应机制吃透,你就真正跨过了前端开发的门槛,后续再去学更高级的框架时,也能明白它们底层到底在替你封装什么操作。
课程目录
1-1 [初识JavaScript语言] 认识JavaScript语言 (18:23) 1-2 [初识JavaScript语言] 解释性脚本语言 (11:01) 1-3 [初识JavaScript语言] JavaScript发展史 (14:00) 1-4 [初识JavaScript语言] 在VS Code中写JavaScript (11:11) 1-5 [初识JavaScript语言] 在浏览器的Console中写JavaScript (08:09) 2-1 [初识事件和DOM] 响应按钮点击的事件 (11:25) 2-2 [初识事件和DOM] 操作表单中Input文本框 (19:04) 2-3 [初识事件和DOM] 操作div容器 (07:04) 2-4 [初识事件和DOM] 修改CSS属性值 (07:45) 2-5 [初识事件和DOM] 理解window.onload事件 (10:49) 2-6 [初识事件和DOM] 演示:div操作综合演练 (20:37) 2-7 [初识事件和DOM] 响应按钮点击事件的两种方法 (06:44) 2-8 [初识事件和DOM] 响应键盘事件 (20:10) 2-9 [初识事件和DOM] 响应Hover事件 (08:24) 3-1 [变量] 定义变量 (11:02) 3-2 [变量] 变量的命名 (11:28) 3-3 [变量] Number类型 (24:18) 3-4 [变量] 数据类型 (12:03) 3-5 [变量] String类型 (17:39) 3-6 [变量] 数据类型转换 (19:56) 3-7 [变量] 案例演示:进制转换 (22:15) 3-8 [变量] 时间日期的基本操作 (24:35) 4-1 [运算符] 算术运算符 (26:00) 4-2 [运算符] 赋值运算符 (25:54) 4-3 [运算符] 比较运算符 (15:03) 4-4 [运算符] 逻辑运算符 (09:11) 4-5 [运算符] 三元运算符 (12:39) 4-6 [运算符] 案例演示:计算生日是哪天? (23:53) 5-1 [条件选择] If条件选择基本结构 (13:39) 5-2 [条件选择] 案例演示:统计各种字符的数量 (18:11) 5-3 [条件选择] 案例演示:通过键盘控制方块的移动 (19:25) 5-4 [条件选择] switch条件选择基本结构 (20:08) 6-1 [循环] while循环 (22:34) 6-2 [循环] do--while循环 (11:52) 6-3 [循环] 案例演示:计算纸的高度 (27:32) 6-4 [循环] for循环 (12:00) 6-5 [循环] 案例演示:复选框的使用 (30:07) 6-6 [循环] 循环嵌套的案例演示:打印三角形 (15:08) 6-7 [循环] 循环关键字:break和continue (14:22) 7-1 [综合案例演示:实现iPhone中的计算器] 计算器的页面布局 (33:22) 7-2 [综合案例演示:实现iPhone中的计算器] 批量响应点击事件 (15:30) 7-3 [综合案例演示:实现iPhone中的计算器] 实现基本的运算 (16:40) 7-4 [综合案例演示:实现iPhone中的计算器] 计算器运算的优化 (10:53) 7-5 [综合案例演示:实现iPhone中的计算器] 计算器功能的完善 (13:50) 8-1 [综合案例演示:轮播图] 轮播图的介绍和案例展示 (05:06) 8-2 [综合案例演示:轮播图] 轮播图的页面布局 (27:38) 8-3 [综合案例演示:轮播图] 实现基本的轮播 (23:18) 8-4 [综合案例演示:轮播图] 轮播功能的完善 (16:59) 9-1 [Array集合] 初识Array集合 (14:03) 9-2 [Array集合] 添加和删除元素 (16:47) 9-3 [Array集合] Array集合的遍历 (11:14) 9-4 [Array集合] 案例演示:随机生成数字 (38:05) 9-5 [Array集合] Array集合的常见方法 (16:32) 9-6 [Array集合] 案例演示:生成学生成绩(上) (32:31) 9-7 [Array集合] 案例演示:生成学生成绩(下) (34:38) 9-8 [Array集合] 使用forEach实现Array集合的遍历 (07:39) 10-1 [Set集合] 初识Set集合 (10:53) 10-2 [Set集合] Set集合的遍历 (06:29) 10-3 [Set集合] Set集合常见的方法 (15:26) 10-4 [Set集合] 案例演示:集合的逻辑运算 (36:18) 11-1 [Map集合] 初识Map集合 (14:58) 11-2 [Map集合] Map集合的问题讨论 (08:36) 11-3 [Map集合] Map集合常见的方法 (20:19) 11-4 [Map集合] Map集合的遍历 (11:00) 11-5 [Map集合] 案例演示:下拉框的联动(上) (25:19) 11-6 [Map集合] 案例演示:下拉框的联动(下) (25:33) 12-1 [第4季课程总结] 课程总结 (07:22)





