资源简介
背景介绍
作为一名前端工程师,JavaScript 你一定每天都在用。但是,JavaScript 有诸多复杂微妙的机制,重复机械地使用无法转化成进阶经验,很多前端开发对其的掌握程度仅仅停留在会用的层面,面试常常挂在语言的内部实现原理上。
对于前端工程师来说,精通 JavaScript 不仅可以助力眼前的面试,同时,对其的掌握程度也决定了你未来技术发展的上线,扎实的 JavaScript 基础可以帮助你从容应对新技术、新框架。
专栏解读
专栏分为 4 大模块,共 22 篇,结合 JavaScript 代码经典面试题目和实操案例,带你深度挖掘原生 JavaScript 底层原理,构建完整的原生 JavaScript 知识体系,进而提升编码能力。
基石篇
专栏深入讲解 JavaScript 数据类型、继承、闭包等核心基础知识并分析其底层原理。这是构建前端工具的基础内容,也是编码能力的基石。其中涉及的知识点,比如深浅拷贝和实现 JSON.Stringfy ,是大厂面试官经常会问到的考点,本专栏将以进阶练习的形式带你轻松掌握。
深入数组 & API 原理篇
在日常开发中,数组是经常会用到的数据类型,使用和出现频率非常之高。本模块将从数组原理、数组排序两大方向带你了解数组,其中会涉及梳理数组 API、实现数组扁平化,以及数组 sort 方法。掌握这部分知识,无需去翻 JS 数组相关的文档,就可以轻松厘清前端业务逻辑、快速处理数组数据,提升你的开发效率。
异步编程篇
异步编程在浏览器端非常重要,浏览器端比较耗时的操作都需要进行异步操作来减少等待时间。
本模块会从 JavaScript 的异步编程方式讲起,深入研究 Promise、Async/await 以及 Co 等异步编程的方式,探究 JavaScript 异步编程源码精髓,让你摆脱前端代码的回调地狱,更优雅地实现并解决业务场景的复杂问题、提升页面性能。
V8 引擎篇
浏览器核心引擎 V8 是执行 JavaScript 代码的程序或解释器。它可以使 JS 的执行性能大幅提升,也是目前大多数浏览器普遍使用的引擎。这一模块通过对浏览器垃圾回收机制、浏览器核心引擎的工作逻辑等内容的讲解,帮助你理解 JavaScript 代码是如何被 V8 引擎编译和执行的。这对于写出高性能的 JavaScript 代码有着很好的帮助。
彩蛋
最后专栏会为你剖析互联网大厂的面试题目,带你了解互联网大厂的职级体系和面试定级标准,梳理面试思路和前端知识的学习方法,实现自身的突破和提升。
*此外,专栏的每一个模块都会用 1~2 讲带你实操,比如实现一个 JSON.Stringfy 方法、实现一个 EventEmitter、手写 JS 数组多个 API 的底层实现。及时地巩固练习,会为你带来事半功倍的效果。
讲师简介
若离 前美团前端技术专家
曾负责和参与过美团多个业务(到家、团购及电影业务)的前端研发及团队搭建,致力于前端性能优化、质量保证、效率提升、跨端融合等方向的研究,并且都有一定的技术落地,得到了超出预期的结果。
现在某大厂负责前端、中台业务以及跨端平台的核心研发。目前,致力于带领团队探索跨端技术上以及向全栈方向发展。
持续为公司进行前端岗位的社招、校招面试近 6 年多,面试候选人近千人,深谙大厂面试套路及定级之道。
资源目录
601_JavaScript 核心原理精讲 [2.4G] ├──01 代码基本功测试(上):JS 的数据类型你了解多少?_6174 [174.8M] │ └──01 代码基本功测试(上):JS 的数据类型你了解多少?.mp4 [174.8M] ├──02 代码基本功测试(下):如何实现一个深浅拷贝?_6175 [189.5M] │ └──02 代码基本功测试(下):如何实现一个深浅拷贝?.mp4 [189.5M] ├──03 继承实现:探究 JS 常见的 6 种继承方式_6176 [158.9M] │ └──03 继承实现:探究 JS 常见的 6 种继承方式.mp4 [158.9M] ├──04 继承进阶:如何实现 new、apply、call、bind 的底层逻辑?_6177 [155.6M] │ └──04 继承进阶:如何实现 new、apply、call、bind 的底层逻辑?.mp4 [155.6M] ├──05 函数那些事:JS 闭包难点剖析_6178 [153M] │ └──05 函数那些事:JS 闭包难点剖析.mp4 [153M] ├──06 进阶练习:带你一起实现 JSON.Stringify 方法_6179 [119.8M] │ └──06 进阶练习:带你一起实现 JSON.Stringify 方法.mp4 [119.8M] ├──07 数组原理(上):帮你梳理眼花缭乱的数组 API_6180 [212.8M] │ └──07 数组原理(上):帮你梳理眼花缭乱的数组 API.mp4 [212.8M] ├──08 数组原理(中):如何理解 JS 的类数组?_6181 [120.9M] │ └──08 数组原理(中):如何理解 JS 的类数组?.mp4 [120.9M] ├──09 数组原理(下):实现数组扁平化的 6 种方式_6182 [93.9M] │ └──09 数组原理(下):实现数组扁平化的 6 种方式.mp4 [93.9M] ├──10 数组排序(上):如何用 JS 实现各种数组排序?_6183 [140M] │ └──10 数组排序(上):如何用 JS 实现各种数组排序?.mp4 [140M] ├──11 数组排序(下):ort 排序方法的实现原理_6184 [117.5M] │ └──11 数组排序(下):ort 排序方法的实现原理.mp4 [117.5M] ├──12 进阶练习:带你手写 JS 数组多个方法的底层实现_6185 [70.4M] │ └──12 进阶练习:带你手写 JS 数组多个方法的底层实现.mp4 [70.4M] ├──13 异步编程(上):JS 异步编程都有哪些方案?_6186 [101.9M] │ └──13 异步编程(上):JS 异步编程都有哪些方案?.mp4 [101.9M] ├──14 异步编程(中):如何深入理解异步编程的核心 Promie?_6187 [115.2M] │ └──14 异步编程(中):如何深入理解异步编程的核心 Promie?.mp4 [115.2M] ├──15 异步编程(下):如何理解 Generator、Ayncawait 等异步编程的语法糖?_6188 [126.6M] │ └──15 异步编程(下):如何理解 Generator、Ayncawait 等异步编程的语法糖?.mp4 [126.6M] ├──16 进阶练习(上):怎样轻松实现一个 EventEmitter?_6189 [114.3M] │ └──16 进阶练习(上):怎样轻松实现一个 EventEmitter?.mp4 [114.3M] ├──17 进阶练习(下):如何实现符合 PromieA+ 规范的 Promie?_6190 [140.1M] │ └──17 进阶练习(下):如何实现符合 PromieA+ 规范的 Promie?.mp4 [140.1M] └──开篇词 打好 JS 基石,走稳前端进阶之路_6173 [110.5M] └──开篇词 打好 JS 基石,走稳前端进阶之路.mp4 [110.5M]
学习
学习一波
提升前端,都是干货,感谢
感谢分享
感谢分享。
感谢分享
感谢分享
感谢分享
来了
感谢分享
学习
学习
学习下原理的东西
感谢分享
非常感谢!
學習了
学习学习
学习学习
多谢分享,学习学习了
多谢分享,学习学习
感谢分享~
加油,帮同学找的。
感谢分享
学习!学习!
感谢分析
感谢分享。
谢谢
很大
提升一下javascript基础
感谢分享
感谢
谢谢分享
学习了
学习!学习!
学习了