2020最新前端进阶宝典

前端进阶必备,github 优质资源整理分享!(欢迎关注收藏)

前言

前端技术日新月异,随着 大前端 的趋势,想要成为一名合格的前端工程师,需要学习掌握的东西更是宽泛。所以我们在寻求进阶的过程中,既要不断夯实前端基础,也要快速响应技术的更新迭代。闲话少说,这次给大家整理分享一些前端进阶的优质学习资源,希望对大家有所帮助!

github 优质项目

frontend-tech-list

前端技术清单,不论你是正在自学前端,还是对前端某些技术熟练掌握但某些还未涉足,我都希望这份清单能帮助你 review 一些前端的基础能力。

github

前端技术清单

0. 年度报告

1. 基础拾遗

1.1. JavaScript

1.2. CSS

1.3. 浏览器

2. 工程化与工具

2.1. webpack

2.2. Gulp

2.3. Linter

2.4. 静态类型(Typescript/Flow)

2.5. Babel

2.6. CSS预处理与模块化

3. 性能优化

3.1. 加载性能

3.2. 运行时性能

3.3. 前端缓存

3.4. 性能调试与实践

3.5. 性能指标

4. 安全

4.1. XSS

4.2. CSRF

4.3. CSP

4.4. HTTPS

4.5. 安全实录

5. 自动化测试

5.1. 单元测试

5.2. 端到端测试 (E2E)

5.3. 其他

6. 框架与类库

6.1. React

6.2. Vue

6.3. Redux

6.4. RxJS

7. 新技术/方向

7.1. PWA

7.2. CSS Houdini

7.3. Web Components

7.4. 微前端(Micro Frontends)

7.5. HTTP/2

7.6. WebAssembly

8. 业务相关

8.1. 数据打点上报

8.2. 前端监控

8.3. A/B测试

8.4. “服务端推”

8.5. 动效

9. 不归类的好文

CS-Notes

📚 Tech Interview Guide 技术面试必备基础知识、Leetcode 题解、Java、C++、Python、后端面试、操作系统、计算机网络、系统设计

github

摘要

 算法 操作系统 网络 面向对象  数据库     Java   系统设计   工具   编码实践   后记   

✏️ 算法

剑指 Offer 题解

Leetcode 题解

算法

☁️ 网络

计算机网络

HTTP

Socket

javascript-algorithms

JavaScript 算法与数据结构。本仓库包含了多种基于 JavaScript 的算法与数据结构。每种算法和数据结构都有自己的 README,包含相关说明和链接,以便进一步阅读 (还有 YouTube 视频) 。

算法是如何解决一类问题的明确规范。算法是一组精确定义操作序列的规则。B - 初学者, A - 进阶

github

摘要

Bit 操控 - set/get/update/clear 位、乘以/除以二进制位 、变负等

阶乘

斐波那契数 - 经典 和 闭式 版本

素数检测 (排除法)

欧几里得算法 - 计算最大公约数 (GCD)

最小公倍数 (LCM)

素数筛 - 查找任意给定范围内的所有素数

判断 2 次方数 - 检查数字是否为 2 的幂 (原生和按位算法)

杨辉三角形

复数 - 复数及其基本运算

弧度和角 - 弧度与角的相互转换

快速算次方

整数拆分

割圆术 - 基于 N-gons 的近似 π 计算

离散傅里叶变换 - 把时间信号解析成构成它的频率

30-seconds-of-code

精选 JavaScript 代码段集合,您可以在30秒或更短的时间内理解这些代码段

github

摘要

📚 Array

View contents

🌐 Browser

View contents

javascript-questions

JavaScript 进阶问题列表,从基础到进阶,测试你有多了解 JavaScript,刷新你的知识,或者帮助你的 coding 面试! 💪 🚀 我每周都会在这个仓库下更新新的问题。

github

摘要

输出是什么?

functionsayHi(){console.log(name)console.log(age)varname ='Lydia'letage =21}sayHi()复制代码

A: Lydia 和 undefined

B: Lydia 和 ReferenceError

C: ReferenceError 和 21

D: undefined 和 ReferenceError

答案

输出是什么?

for(vari =0; i <3; i++) {setTimeout(()=>console.log(i),1)}for(leti =0; i <3; i++) {setTimeout(()=>console.log(i),1)}复制代码

A: 0 1 2 和 0 1 2

B: 0 1 2 和 3 3 3

C: 3 3 3 和 0 1 2

答案

Daily-Interview-Question

每天搞定一道前端大厂面试题,祝大家天天进步,一年后会看到不一样的自己。

github

摘要

2019-07-26

第 114 题:编程题,找出字符串中连续出现最多的字符和个数(蘑菇街)

'abcaakjbb'=> {'a':2,'b':2}'abbkejsbcccwqaa'=> {'c':3}复制代码

解析:第 114 题

2019-07-25

第 113 题:编程题,根据以下要求,写一个数组去重函数(蘑菇街)

如传入的数组元素为[123, "meili", "123", "mogu", 123],则输出:[123, "meili", "123", "mogu"]

如传入的数组元素为[123, [1, 2, 3], [1, "2", 3], [1, 2, 3], "meili"],则输出:[123, [1, 2, 3], [1, "2", 3], "meili"]

如传入的数组元素为[123, {a: 1}, {a: {b: 1}}, {a: "1"}, {a: {b: 1}}, "meili"],则输出:[123, {a: 1}, {a: {b: 1}}, {a: "1"}, "meili"]

解析:第 113 题

learnVue

Vue.js 源码解析

github

>need-to-insert-img

vue-design

渲染器,仓库内还有一个针对 Vue 的逐行级别的源码分析,都是干货。

github

>need-to-insert-img

目录列表

组件的本质

设计 Vnode

辅助创建 VNode 的 h 函数

渲染器之挂载

渲染器之 patch

渲染器的核心 Diff 算法

自定义渲染器和异步渲染

CS-Interview-Knowledge-Map

前端面试图谱

github

线上地址

react-interpretation

React 源码解析。通过两个部分来完成这个解析:第一是加上这份代码的中文注释,第二是配套相应的文章。

github

>need-to-insert-img

Front-end-Web-Development-Interview-Question

这里将收集我做过的所有的前端面试笔试题,并根据自己的理解提供解答,以及一些关于前端找工作方面的经验等。

github

>need-to-insert-img

摘要

试题链接原题概述标签分类更新状态

1.mdFront End Web Development QuizCSS部分CSS已完结 :v:

2.mdFront End Web Development QuizHTML部分HTML已完结 :v:

3.mdFEX 面试题General待完善 :punch:

4.md前端面试常见问题General待完善 :punch:

5.md前端面试HTML 相关问题HTML已完结 :v:

高级前端进阶

每周重点攻克一个前端面试重难点

github

摘要

【进阶 1-1 期】理解JavaScript 中的执行上下文和执行栈

【进阶 1-2 期】JavaScript深入之执行上下文栈和变量对象

【进阶 1-3 期】JavaScript深入之内存空间详细图解

【进阶 1-4 期】JavaScript深入之带你走进内存机制

【进阶 1-5 期】JavaScript深入之4类常见内存泄漏及如何避免

前端工匠

努力打造一系列适合初中级工程师能够看得懂的优质文章

github

摘要 浏览器相关 1.深入浅出浏览器渲染原理 2.深入了解浏览器存储 3.深入理解浏览器的缓存机制 4.从URL输入到页面展现到底发生什么? Javascript 1.前端模块化详解(完整版) 2.九种跨域方式实现原理(完整版) 4.JavaScript数据类型转换 5.深入理解JavaScript作用域和作用域链

libpku

github 上大学系列

github

摘要

浙江大学课程攻略共享计划

气垫船计划——免费、去中心化的北京大学往年题资料库

北京大学信科学生会学术部资料库

北大计算机课程大作业

清华大学计算机系课程攻略

东南大学课程共享计划

中国科学技术大学计算机学院课程资源

上海交通大学课程资料分享

中山大学课程资料分享

南京大学课程复习资料

郑州大学课程复习资料

weekly

前端精读周刊

github

摘要

精读 js 模块化发展

精读模态框的最佳实践

精读《编写有弹性的组件》

精读《React Hooks》

精读《React 代码整洁之道》

mobileHack

这里收集了许多移动端上遇到的各种坑

github

摘要 移动Web单页应用开发实践——页面结构化

移动Web产品前端开发口诀——“快”

移动Web开发,4行代码检测浏览器是否支持position:fixed

使用border-image实现类似iOS7的1px底边

移动端web页面使用position:fixed问题总结

underscore-analysis

underscore-1.8.3.js 源码解读 & 系列文章

github

awesome-vue

与Vue.js相关的各种文章合集

github

free-programming-books-zh_CN

📚 免费的计算机编程类中文书籍

github

airbnb/javascript

JavaScript 风格指南

github

其他推荐

文章

CSS 规范中文翻译

CSS3 教程

iCSS - 不止于 CSS

图说设计模式

浏览器渲染原理

手把手教你撸一个简易的 webpack

带你走进webpack世界,成为webpack头号玩家。

webpack4-用之初体验,一起敲它十一遍

基于Webpack搭建React开发环境

[译] JavaScript 如何工作:对引擎、运行时、调用堆栈的概述

深度剖析:如何实现一个 Virtual DOM 算法

大型项目前端架构浅谈(8000字原创)

网站性能优化实战——从12.67s到1.06s的故事

前端 100 问:能搞懂 80% 的请把简历给我

手摸手,带你用vue撸后台 系列

剖析Vue实现原理 - 如何实现双向绑定mvvm

冴羽的 JavaScript 系列

书籍

JS 函数式编程指南

你不知道的 JS

ECMAScript 6 入门

JavaScript 正则表达式迷你书

《图解 HTTP》

《HTTP 权威指南》

《重构-改善既有代码的设计》

《Javascript 高级程序设计》

《Javascript 权威指南》

《JavaScript 函数式编程》

《JavaScript 设计模式与开发实践》

《学习 JS 数据结构与算法》

《CSS 世界》

《CSS 揭秘》

《深入浅出Node.js》

《代码整洁之道》

《忍者秘籍》

《剑指 offer


后记

如果你看到了这里,且本文对你有一点帮助的话,希望你可以动动小手支持一下作者,感谢🍻。文中如有不对之处,也欢迎大家指出,共勉。好了,又耽误大家的时间了,感谢阅读,下次再见!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,686评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,668评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,160评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,736评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,847评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,043评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,129评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,872评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,318评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,645评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,777评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,470评论 4 333
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,126评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,861评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,095评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,589评论 2 362
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,687评论 2 351

推荐阅读更多精彩内容