# JavaScriptThoroughly **Repository Path**: cos-one/JavaScriptThoroughly ## Basic Information - **Project Name**: JavaScriptThoroughly - **Description**: 《JS高级进阶》课程 - **Primary Language**: HTML - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 15 - **Forks**: 4 - **Created**: 2022-12-12 - **Last Updated**: 2023-07-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JavaScript Thoroughly ## ✨课程介绍 本系列课程旨在学习 **JavaScript** 在**运行时的底层逻辑**,区别于目前大部分教程,几乎不教学任何语法(可能会教少量语法,不过目的还是说明语法背后的逻辑) #### 本系列课程大纲: #### 第一篇:Js的宿主 --> 浏览器 **开天辟地,建立前端体系的地基** ***💫 浏览器篇:*** - JavaScript到底是个啥? `JS发展史` - 程序到底是个啥? `程序,进程和线程` - 浏览器是一个怎样的程序? `浏览器架构分析` - 浏览器内核究竟是个啥? `渲染进程工作原理` - 我们看到的页面是如何形成的? `渲染引擎工作原理` > **😎本篇总结:** > > 本篇学完并掌握后,你能从宏观上重新认识JS,并且大致了解 我们写的 HTML 如何被浏览器呈现出来,你会学到一些重要的概念,如 `事件循环` ,`任务队列` , `JS的异步执行`, `Reflow的本质` ... 等等 > > 该篇是你建立整个前端学习体系的基石,相对比较底层,从某种层面上说,比较深入,但从专业的角度来说,又比较浅 > > 总结来说,本篇深入浅出,让你写的代码不再是黑盒! #### 第二篇: Js的心脏 --> 核心原理 **核心中的核心,前端的心脏** ⭐**JS解析引擎核心篇:** ***对象(核心)篇:*** - 对象的本质是什么? `引用类型和基本类型的底层区别` - JS为什么不能称之为面向对象语言? `js的灵魂:对象` - JS对象的驱动:原型链详解 `透彻理解原型链` - new关键字到底是个啥 `构造函数的本质` - ES6对象语法糖机理 `谢谢你,语法糖` ***函数(核心)篇:*** - Js王冠上最闪亮的宝石! `Js中最重要的概念,执行上下文` - 闭包原来这么简单 `作用域,闭包的本质` - 函数式!第一类对象! `什么?函数的本质居然是对象` - this ? 就这? `this的本质` - ES6箭头函数机理 `箭头函数yyds` > 📚本篇总结: > > 🦄🐳🐧🐥!!! > > 本篇可以说是整个 **`JS的心脏`** > > 你对JS的理解程度,百分之九十取决于你对本篇的理解程度, > > 本篇是整个系列中的核心,是JS作用机理的关键, > > 可以这样说,Js的运作,全靠本篇的逻辑进行支撑, > > 完全掌握本篇,Js 手到擒来,其他的就交给时间和记忆 ​ #### 第三篇: Js的进阶 --> 必不可少的知识 **优质程序必备技能** ***函数(进阶)篇:*** - 开启异步编程! `Promise基础` - 高级工具!生成器 `生成器及其原理` - 刻入 DNA! `手写Promise实现` - Async ? Await ? Easy! `语法糖的本质` - 优雅的函数式编程 `简单了解函数式编程` ***对象(进阶)篇:*** - "."点运算符的本质 `[[GET]]和[[PUT]]` - 对象访问的控制! `getter,setter, 属性描述符` - 发挥对象的能量! `常用内置对象` > **🦄本篇总结:** > > 本篇是一些好像比较难的知识点,但却是写出优质程序不可缺少的技能。 > > 但是,如果你前面的基础掌握很好的话,突破这里也轻而易举,相信你在这个阶段以后,已经是一名相当厉害的Js工程师了 #### 第四篇: Js的工具箱 ***难免会用到的知识:*** - Js 的数据是如何编码的 ? `IEEE754和Unicode` - 更合理的代码组织! `模块化开发` - ES6 ! GOOD! `ES6难点解读` - 不能心急的正则表达式 `正则表达式详解` #### 第五篇: 浏览器宿主下的 Js **DOM与BOM技巧** .... --- ### 课程须知: 本系列课程难度较高,内容充实,不是入门JS,而是深入JS #### 面向人群: 本系列课程**不适合**下列人群: - 从未接触过 `JavaScript` ,试图入门 JS 语法 - 没有任何计算机学习经验 (其实如果你有一点编程经验就够了) - 懒惰的大脑 (本课程难度可能比较高,因此某些知识点可能需要反复的观看和思考,因此需要付出较多的时间,也需要你勤劳思考) 本系列课程**适合**于以下人群: - 掌握 `Javascript` 基础语法 (会ES6更佳,不会也没关系) - 不满足于表象的语法层面 - 目标工程师而不是码农 #### 资料获取: ppt,代码,任务将全部收录于本仓库 #### 交流答疑群: ![image-20221213095645938](https://s2.loli.net/2022/12/13/jyvn8WepNJFxGD1.png) --- ### 课程地址 > 🎈提示:按住 `ctrl` 点击图片进入课程视频 --- ### 课程资料参考: (逐步补充中) 《Javascript忍者秘籍》 谷歌官方文档 谷歌开源仓库 阮一峰Js教程(旧版) 阮一峰Js教程(新版) 现代Js教程 OliverLiu博客 GeeksForGeeks