每个JavaScript开发人员应该知道的33个概念
每个JavaScript开发人员应该知道的33个概念
介绍
创建此存储库的目的是帮助开发人员在JavaScript中掌握他们的概念。这不是一项要求,而是未来研究的指南。它基于Stephen Curtis撰写的文章,你可以在这里阅读。
社区
随意提交PR添加链接到您自己的概述或评论。如果您想将repo翻译成您的母语,请随意这样做。
该回购的所有翻译将在下面列出:
- 中文 - Re Tian
- 葡萄牙语 - BR - Tiago Boeing
- 韩语 - Suin Lee
- 西班牙语 - Adonis Mendoza
- 土耳其语 - İlkerDemir
- 俄语 - Mihail Gumennii
目录
- 调用堆栈
- 原始类型
- 值类型和引用类型
- 隐式,显式,标称,结构化和鸭子打字
- == vs === vs typeof
- 功能范围,块范围和词汇范围
- 表达与声明
- IIFE,模块和命名空间
- 消息队列和事件循环
- setTimeout,setInterval和requestAnimationFrame
- JavaScript引擎
- 按位运算符,类型数组和数组缓冲区
- DOM和布局树
- 工厂和班级
- 这,调用,应用和绑定
- new,Constructor,instanceof和Instances
- 原型继承与原型链
- Object.create和Object.assign
- map,reduce,filter
- 纯粹的功能,副作用和状态突变
- 关闭
- 高阶函数
- 递归
- 集合和生成器
- 承诺
- 异步/ AWAIT
- 数据结构
- 昂贵的操作和大O符号
- 算法
- 继承,多态和代码重用
- 设计模式
- 部分应用,Currying,Compose和Pipe
- 清洁代码
1.调用堆栈
用品
理解Javascript调用堆栈,事件循环 - Gaurav Pandvia![滚动]()
理解JavaScript调用堆栈 - Charles Freeborn![滚动]()
Javascript:什么是执行上下文?什么是呼叫堆栈? - Valentino Gagliardi![滚动]()
什么是JS事件循环和调用堆栈? - 杰斯特尔福德![滚动]()
调用堆栈 - MDN![滚动]()
理解Javascript中的执行上下文和执行堆栈 - Sukhjinder Arora![滚动]()
JavaScript的工作原理:引擎,运行时和调用堆栈概述 - Alexander Zlatkov![滚动]()
JavaScript中执行上下文,吊装,范围和闭包的终极指南 - Tyler McGinnis![滚动]()
影片
Javascript:调用堆栈解释 - 编码阻止印度![movie_camera]()
JS Call Stack在9分钟内解释 - Colt Steele![movie_camera]()
JavaScript执行堆栈 - Codecademy![movie_camera]()
什么是调用堆栈? - Eric Traub![movie_camera]()
调用堆栈 - Kevin Drumm![movie_camera]()
理解JavaScript执行 - Codesmith![movie_camera]()
调用堆栈和事件循环 - 电影com![movie_camera]()
JavaScript中执行上下文,吊装,范围和闭包的终极指南 - Tyler McGinnis![movie_camera]()
2.原始类型
用品
如何用JavaScript编码数字 - Axel Rauschmayer博士![滚动]()
关于JavaScript编号类型需要了解的内容 - Max Wizard K.![滚动]()
每个JavaScript开发人员应该知道的浮点数 - Chewxy![滚动]()
JavaScript基元的秘密生活 - 安格斯·克罗尔![滚动]()
原始类型 - 流程![滚动]()
(不)JavaScript中的所有内容都是对象 - Daniel Li![滚动]()
JavaScript数据类型和数据结构 - MDN![滚动]()
影片
JavaScript参考与原始类型 - Academind![movie_camera]()
JavaScript原始类型 - Simon Sez IT![movie_camera]()
Javascript原始和参考类型 - Baljeet Singh![movie_camera]()
JavaScript中的值类型和引用类型 - 使用Mosh编程![movie_camera]()
JavaScript原始数据类型 - Avelx![movie_camera]()
你从未想过的关于JavaScript数字的一切--Bartek Szopka![movie_camera]()
3.价值类型和参考类型
用品
在Javascript中解释价值与参考 - Arnav Aggarwal![滚动]()
理解JavaScript中的值和引用类型 - Zsolt Nagy![滚动]()
JavaScript中的原始类型和引用类型 - Bran van der Meer![滚动]()
JavaScript中的值类型,引用类型和范围 - Ben Aston![滚动]()
回归根源:JavaScript价值与参考 - Miro Koczka![滚动]()
在JavaScript中抓住“按价值”和“借鉴”--LénaFaure![滚动]()
JavaScript参考和复制变量 - VítorCapretz![滚动]()
JavaScript原始与参考值![滚动]()
影片
4.隐式,显式,标称,结构化和鸭子打字
用品
你需要知道的关于Javascript的隐含强制 - 承诺Tochi![滚动]()
JavaScript类型强制解释 - 阿列克谢萨莫什金![滚动]()
Javascript强制解释 - 本加里森![滚动]()
Javascript中的Type Coercion究竟是什么?- 堆栈溢出![滚动]()
你不懂JS:类型和语法[书] - 凯尔辛普森![滚动]()
(不)JavaScript中的所有内容都是对象 - Daniel Li![滚动]()
在JavaScript中键入强制,以及为什么每个人都错了。![滚动]()
影片
==?=== ??? ......#@ ^% - Shirmung Bielefeld![movie_camera]()
Javascript中的强制 - Hitesh Choudhary![movie_camera]()
JavaScript问题:什么是强制? - 史蒂文汉考克![movie_camera]()
5. == vs === vs typeof
用品
JavaScript Double Equals vs. Triple Equals - Brandon Morelli![滚动]()
JS中的=,==和===有什么区别? - Codecademy![滚动]()
我应该在JavaScript中使用===或==等式比较运算符吗? - Panu Pitkamaki![滚动]()
== vs === JavaScript:Double Equals and Eercion - AJ Meyghani![滚动]()
为什么在JavaScript中使用三等于运算符? - Louis Lazaris![滚动]()
JavaScript中==和===有什么区别? - 克雷格巴克勒![滚动]()
为什么javascript的typeof总是返回“对象”?- 堆栈溢出![滚动]()
检查Javascript中的类型 - Toby Ho![滚动]()
如何更好地检查JavaScript中的数据类型 - Webbjocke![滚动]()
检查JavaScript中是否缺少值 - Tomer Aberbach![滚动]()
影片
6.功能范围,块范围和词汇范围
用品
你不知道JS:范围和闭包[书] - 凯尔辛普森![滚动]()
功能范围与块范围之间的争斗 - 马吕斯鲱鱼![滚动]()
在JavaScript中模拟块范围 - Josh Clanton![滚动]()
JavaScript中函数和块范围的区别 - Joseph Cardillo![滚动]()
JavaScript中的函数作用域和块作用域 - Samer Buna![滚动]()
理解JavaScript中的范围和上下文| 瑞恩莫尔![滚动]()
JavaScript范围和闭包 - Zell Liew![滚动]()
理解JavaScript中的范围 - Wissam Abirached![滚动]()
说到JavaScript - 变量:范围,环境和闭包 - Axel Rauschmayer博士![滚动]()
理解JavaScript中的范围 - Hammad Ahmed![滚动]()
影片
是什么让Javascript变得奇怪...而且真棒pt。4 - LearnCode.academy![movie_camera]()
JavaScript中的可变范围 - Kirupa Chinnathambi![movie_camera]()
JavaScript块范围和功能范围 - mmtuts![movie_camera]()
什么是词汇范围? - NWCalvank![movie_camera]()
7.表达与声明
用品
所有你需要知道的关于Javascript的表达,陈述和表达陈述 - 承诺Tochi![滚动]()
函数表达式与函数声明 - Paul Wilkins![滚动]()
JavaScript函数 - 声明与表达--Ravi Roshan![滚动]()
函数声明与函数表达式 - Mandeep Singh![滚动]()
函数声明与函数表达式 - Anguls Croll![滚动]()
影片
8. IIFE,模块和命名空间
用品
掌握立即调用的函数表达式 - Chandra Gundamaraju![滚动]()
ES6模块是否使IIFE的情况过时了?![滚动]()
JavaScript模块,模块格式,模块加载器和模块捆绑器的10分钟入门 - Jurgen Van de Moere![滚动]()
模块 - 探索JS![滚动]()
ES模块:卡通深潜 - 林克拉克![滚动]()
了解ES6模块 - Craig Buckler![滚动]()
JavaScript中的ES6模块概述 - Brent Graham![滚动]()
ES6模块深度 - NicolásBevacqua![滚动]()
ES6模块,Node.js和Michael Jackson解决方案 - Alberto Gimeno![滚动]()
JavaScript模块:初学者指南 - Preethi Kasireddy![滚动]()
影片
立即调用函数表达式 - Beau教JavaScript - freeCodeCamp![movie_camera]()
了解JavaScript IIFE![movie_camera]()
JavaScript模块:ES6导入和导出 - Kyle Robinson![movie_camera]()
ES6 - 模块 - 瑞安克里斯蒂安![movie_camera]()
现实世界中的ES6模块 - Sam Thorogood![movie_camera]()
ES6模块 - TempleCoding![movie_camera]()
9.消息队列和事件循环
用品
JavaScript事件循环解释 - Anoop Raveendran![滚动]()
JavaScript事件循环:解释 - Erin Sweson-Healey![滚动]()
什么是Javascript中的事件循环 - WP Tutor.io![滚动]()
理解JS:事件循环 - Alexander Kondov![滚动]()
理解JavaScript事件循环 - Ashish Gupta![滚动]()
Javascript中的事件循环 - Manjula Dube![滚动]()
JavaScript事件循环 - Flavio Copes![滚动]()
JavaScript的工作原理:事件循环 - Alexander Zlatkov![滚动]()
影片
到底是什么事件循环?| JSConf EU - Philip Roberts![movie_camera]()
JavaScript事件循环 - 简化ComScience![movie_camera]()
我陷入了一个事件循环 - 菲利普罗伯茨![movie_camera]()
在循环中 - 杰克阿奇博尔德| JSConf.Asia 2018![movie_camera]()
Desmitificando el Event Loop(西班牙语)![movie_camera]()
10. setTimeout,setInterval和requestAnimationFrame
用品
setTimeout和setInterval - JavaScript.Info![滚动]()
为什么不使用setInterval - Akanksha Sharma![滚动]()
setTimeout VS setInterval - 开发人员![滚动]()
使用requestAnimationFrame - Chris Coyier![滚动]()
了解JavaScript的requestAnimationFrame() - JavaScript Kit![滚动]()
处理JavaScript中的时间间隔 - Amit Merchant![滚动]()
影片
Javascript:setTimeout和setInterval如何工作 - 编码阻止印度![movie_camera]()
JavaScript中的setTimeout和setInterval - techsith![movie_camera]()
JavaScript计时器 - 史蒂夫格里菲斯![movie_camera]()
JavaScript setTimeout,setInterval&clearInterval - DoingITeasyChannel![movie_camera]()
JavaScript setTimeOut和setInterval解释 - Theodore Anderson![movie_camera]()
11. JavaScript引擎
用品
JavaScript引擎 - Jen Looper![滚动]()
了解Chrome V8引擎如何将JavaScript转换为机器代码 - DroidHead![滚动]()
了解V8的字节码 - Franziska Hinkelmann![滚动]()
V8引擎如何工作? - Thibault Laurens![滚动]()
Google的V8 Javascript引擎简史 - Clair Smith![滚动]()
JavaScript要点:为什么你应该知道引擎是如何工作的 - Rainer Hahnekamp![滚动]()
影片
12.按位运算符,类型数组和数组缓冲区
用品
用JS编程:按位操作 - Alexander Kondov![滚动]()
在现实生活中使用JavaScript的按位运算符 - ian m![滚动]()
JavaScript按位运算符 - w3resource![滚动]()
Javascript中的按位运算符 - Joe Cha![滚动]()
Javascript中二进制计算和按位运算符的综合入门 - Paul Brown![滚动]()
影片
13. DOM和布局树
用品
如何理解和修改JavaScript中的DOM - Tania Rascia![滚动]()
JavaScript DOM教程与示例 - Guru99![滚动]()
什么是DOM? - 克里斯科伊尔![滚动]()
使用JavaScript遍历DOM - Zell Liew![滚动]()
雄辩的JavaScript [书] - 文档对象模型![滚动]()
DOM树![滚动]()
如何在Javascript中遍历DOM - VojislavGrujić![滚动]()
渲染树建筑 - Ilya Grigorik![滚动]()
影片
14.工厂和班级
用品
如何在JavaScript中使用类 - Tania Rascia![滚动]()
Javascript类 - 引擎盖下 - 马吉德![滚动]()
ES6课程 - 纳撒尼尔福斯特![滚动]()
更好的JavaScript与ES6,Pt。II:深入课堂 - Peleke Sengstacke![滚动]()
了解简单JavaScript中的工厂设计模式 - Aditya Agarwal![滚动]()
JavaScript工厂函数与构造函数与类 - Eric Elliott![滚动]()
ES6 +的JavaScript工厂功能 - Eric Elliott![滚动]()
JavaScript中的工厂功能 - Josh Miller![滚动]()
JS ES6中的工厂模式 - SnstsDev![滚动]()
Class vs Factory功能:探索前进之路 - Cristi Salcescu![滚动]()
影片
15.这,调用,应用和绑定
用品
使用方法:在JavaScript中调用(),apply()和bind() - Niladri Sekhar Dutta![滚动]()
JavaScript的应用,调用和绑定方法对JavaScript专业人员至关重要 - Richard Bovell![滚动]()
WTF就是这样 - 理解这个关键字,调用,应用和绑定JavaScript - Tyler McGinnis![滚动]()
Javascript:call(),apply()和bind() - Omer Goldberg![滚动]()
call / apply / bind之间的区别 - Ivan Sifrim![滚动]()
JavaScript中的call(),apply()和bind()方法![滚动]()
在JavaScript中掌握'this':回调和bind(),apply(),call() - Michelle Gienow![滚动]()
JavaScript的应用,调用和绑定通过托管野炊解释 - Kevin Kononenko![滚动]()
如何和何时使用绑定,调用和应用Javascript - Eigen X.![滚动]()
JavaScript .bind()vs .apply()和.call() - Hack Sparrow![滚动]()
call() - MDN![滚动]()
bind() - MDN![滚动]()
apply() - MDN![滚动]()
JavaScript中的'this'是什么? - Daniel Li![滚动]()
让我向你解释一下是什么![滚动]()
this。(Javascript) - Jason Yu
影片
JavaScript调用,应用和绑定 - 技术![movie_camera]()
JavaScript Call,Apply和Bind功能的实用应用程序 - techsith![movie_camera]()
JavaScript(调用,绑定,应用) - 好奇的aatma![movie_camera]()
在ES2017的世界中理解功能和'这个' - 布莱恩休斯![movie_camera]()
bind和this - JavaScript中的对象创建 - FunFunFunction![movie_camera]()
JavaScript,Call和Bind函数的实际应用 - techsith![movie_camera]()
JS函数方法call(),apply()和bind() - Steve Griffith![movie_camera]()
16. new,Constructor,instanceof和Instances
用品
JavaScript初学者:'新'运算符 - Brandon Morelli![滚动]()
让我们揭开JavaScript的“新”关键词 - 辛西娅·李的神秘面纱![滚动]()
构造函数,运算符“new” - JavaScript.Info![滚动]()
了解JavaScript构造函数 - Faraz Kelhini![滚动]()
使用构造函数 - Openclassrooms![滚动]()
超越![滚动]()
typeof和instanceof:简化动态类型检查 - Axel Rauschmayer博士 JavaScript中的运算符实例是什么 - appendTo![滚动]()
JavaScript instanceof vs typeof - Gary Rafferty![滚动]()
功能和对象,彼此的实例 - Kiro Risk![滚动]()
17.原型继承和原型链
用品
Javascript:原型与类 - Valentin PARSY![滚动]()
JavaScript引擎基础:优化原型 - Mathias Bynens![滚动]()
JavaScript原型 - NC Patro![滚动]()
Javascript中的原型 - Sandeep Ranjan![滚动]()
JavaScript中的原型 - Rupesh Mishra![滚动]()
JavaScript中的原型:它很古怪,但它的工作原理--Pranav Jindal![滚动]()
继承和原型链 - MDN![滚动]()
掌握JavaScript访谈:类和原型继承之间有什么区别? - Eric Elliott![滚动]()
理解JavaScript:原型和继承 - Alexander Kondov![滚动]()
原型继承 - JavaScript.Info![滚动]()
如何使用JavaScript中的原型和继承 - Tania Rascia![滚动]()
掌握JavaScript原型和继承 - Arnav Aggarwal![滚动]()
你不知道JS [书]第5章:原型 - 凯尔辛普森![滚动]()
使用CSS解释JavaScript的原型继承 - Nash Vail![滚动]()
JavaScript中的原型继承 - Jannis Redmann![滚动]()
JavaScript中的经典和原型继承 - Danny Cornelisse![滚动]()
揭开ES6级别和原型继承的神秘面纱 - Neo Ighodaro![滚动]()
原型继承简介 - Dharani Jayakanthan![滚动]()
JavaScript中的类 - 解释 - Daniel Li![滚动]()
你不懂JS:这个和对象的原型 - 凯尔辛普森![滚动]()
影片
Javascript原型继承 - Avelx![movie_camera]()
JavaScript原型继承解释pt。我 - 技术![movie_camera]()
JavaScript原型继承解释pt。II - techsith![movie_camera]()
JavaScript Prototype Inheritance Explained — Kyle Robinson![movie_camera]()
Advanced Javascript - Prototypal Inheritance In 1 Minute![movie_camera]()
An Overview Of Classical Javascript Classes and Prototypal Inheritance — Pentacode![movie_camera]()
Object Oriented JavaScript - Prototype — The Net Ninja![movie_camera]()
Prototype in JavaScript — kudvenkat![movie_camera]()
JavaScript Using Prototypes — O'Reilly![movie_camera]()
A Beginner's Guide to Javascript's Prototype — Tyler Mcginnis![movie_camera]()
Prototypes in Javascript - p5.js Tutorial — The Coding Train![movie_camera]()
18. Object.create and Object.assign
Articles
Object.create() — MDN![滚动]()
Object.create in JavaScript — Rupesh Mishra![滚动]()
Object.create(): the New Way to Create Objects in JavaScript — Rob Gravelle![滚动]()
Basic Inheritance with Object.create — Joshua Clanton![滚动]()
Object.create() In JavaScript — GeeksforGeeks![滚动]()
Understanding the difference between Object.create() and the new operator — Jonathan Voxland![滚动]()
JavaScript Object Creation: Patterns and Best Practices — Jeff Mott![滚动]()
Dealing With Objects in JavaScript With Object.assign, Object.keys and hasOwnProperty![滚动]()
Copying Objects in JavaScript ― Orinami Olatunji![滚动]()
Object.assign() — MDN![滚动]()
JavaScript: Object.assign() — Thiago S. Adriano![滚动]()
Videos
19. map, reduce, filter
Articles
JavaScript Functional Programming — map, filter and reduce — Bojan Gvozderac![滚动]()
Learn map, filter and reduce in Javascript — João Miguel Cunha![滚动]()
JavaScript’s Map, Reduce, and Filter — Dan Martensen![滚动]()
How to Use Map, Filter, & Reduce in JavaScript — Peleke Sengstacke![滚动]()
JavaScript — Learn to Chain Map, Filter, and Reduce — Brandon Morelli![滚动]()
Javascript data structure with map, reduce, filter and ES6 — Deepak Gupta![滚动]()
Understanding map, filter and reduce in Javascript — Luuk Gruijs![滚动]()
Functional Programming in JS: map, filter, reduce (Pt. 5) — Omer Goldberg![滚动]()
JavaScript: Map, Filter, Reduce — William S. Vincent![滚动]()
Arrow Functions: Fat and Concise Syntax in JavaScript — Kyle Pennell![滚动]()
JavaScript: Arrow Functions for Beginners — Brandon Morelli![滚动]()
When (and why) you should use ES6 arrow functions — and when you shouldn’t — Cynthia Lee![滚动]()
JavaScript — Learn & Understand Arrow Functions — Brandon Morelli![滚动]()
(JavaScript )=> Arrow functions — sigu![滚动]()
A possibility to use Async/Await for filter(), find(), forEach(), map() and reduce() methods in Array - Ruwan Geeganage![滚动]()
Videos
Map, Filter and Reduce — Lydia Hallie![movie_camera]()
Functional JavaScript: Map, forEach, Reduce, Filter — Theodore Anderson![movie_camera]()
JavaScript Array superpowers: Map, Filter, Reduce (part I) — Michael Rosata![movie_camera]()
JavaScript Array superpowers: Map, Filter, Reduce (part 2) — Michael Rosata![movie_camera]()
JavaScript Higher Order Functions - Filter, Map, Sort & Reduce — Epicop![movie_camera]()
[Array Methods 2/3] .filter + .map + .reduce — CodeWithNick![movie_camera]()
Arrow functions in JavaScript - What, Why and How — Fun Fun Function![movie_camera]()
Learning Functional Programming with JavaScript — Anjana Vakil - JSUnconf![movie_camera]()
20. Pure Functions, Side Effects and State Mutation
Articles
Javascript and Functional Programming — Pure Functions — Omer Goldberg![滚动]()
Master the JavaScript Interview: What is a Pure Function? — Eric Elliott![滚动]()
JavaScript: What Are Pure Functions And Why Use Them? — James Jeffery![滚动]()
Pure functions in JavaScript — @nicoespeon![滚动]()
Functional Programming: Pure Functions — Arne Brasseur![滚动]()
Pure Functions In Javascript — Krunal![滚动]()
Making your JavaScript Pure — Jack Franklin![滚动]()
To mutate, or not to mutate, in JavaScript![滚动]()
Arrays, Objects and Mutations — Federico Knüssel![滚动]()
The State of Immutability — Maciej Sikora![滚动]()
How to deal with dirty side effects in your pure functional JavaScript — James Sinclair![滚动]()
Preventing Side Effects in JavaScript — David Walsh![滚动]()
Videos
Pure Functions — Hexlet![movie_camera]()
Pure Functions - Functional Programming in JavaScript — Paul McBride![movie_camera]()
JavaScript Pure Functions — Seth Alexander![movie_camera]()
21. Closures
Articles
Closures — MDN![滚动]()
I never understood JavaScript closures — Olivier De Meulder![滚动]()
Closure — JavaScript.Info![滚动]()
Understand JavaScript Closures With Ease — Richard Bovell![滚动]()
Understanding JavaScript Closures — Codesmith![滚动]()
Understand Closures in JavaScript — Brandon Morelli![滚动]()
A simple guide to help you understand closures in JavaScript — Prashant Ram![滚动]()
Understanding JavaScript Closures: A Practical Approach — Paul Upendo![滚动]()
Understanding JavaScript: Closures — Alexander Kondov![滚动]()
How to use JavaScript closures with confidence — Léna Faure![滚动]()
JavaScript closures by example — tyler![滚动]()
Videos
Javascript Closure — techsith![movie_camera]()
Closures — Fun Fun Function![movie_camera]()
Closures in JavaScript — techsith![movie_camera]()
JavaScript Closures 101: What is a closure? — JavaScript Tutorials![movie_camera]()
Closures — freeCodeCamp![movie_camera]()
JavaScript Closures — CodeWorkr![movie_camera]()
22. High Order Functions
Articles
Higher-Order Functions — Eloquent JavaScript [Book]![滚动]()
Higher-Order Functions in JavaScript — M. David Green![滚动]()
Higher Order Functions: Using Filter, Map and Reduce for More Maintainable Code — Guido Schmitz![滚动]()
First-class and Higher Order Functions: Effective Functional JavaScript — Hugo Di Francesco![滚动]()
Higher Order Functions in JavaScript — John Hannah![滚动]()
Higher-order Functions — Richard Bovell![滚动]()
Higher Order Functions in JavaScript — Zsolt Nagy![滚动]()
Fun With Higher Order Functions In JavaScript — Derick![滚动]()
Just a reminder on how to use high order functions — Pedro Filho![滚动]()
How to use JavaScript closures with confidence — Léna Faure![滚动]()
JavaScript closures by example — tyler![滚动]()
Videos
JavaScript Higher Order Functions & Arrays — Traversy Media![movie_camera]()
Higher Order Functions — Fun Fun Function![movie_camera]()
Higher Order Functions in Javascript — Raja Yogan![movie_camera]()
Higher Order Iterators in JavaScript — Fun Fun Function![movie_camera]()
Higher Order Functions in JavaScript — The Coding Train![movie_camera]()
23. Recursion
Articles
Recursion in JavaScript — Kevin Ennis![滚动]()
Understanding Recursion in JavaScript — Zak Frisch![滚动]()
Learn and Understand Recursion in JavaScript — Brandon Morelli![滚动]()
Recursion in Functional JavaScript — M. David Green![滚动]()
Programming with JS: Recursion — Alexander Kondov![滚动]()
Anonymous Recursion in JavaScript — simo![滚动]()
Recursion, iteration and tail calls in JS — loverajoel![滚动]()
Understanding Recursion in JavaScript with Confidence — Jay![滚动]()
Videos
Recursion In JavaScript — techsith![movie_camera]()
Recursion — Fun Fun Function![movie_camera]()
Recursion and Recursive Functions — Hexlet![movie_camera]()
Recursion: Recursion() — JS Monthly — Lucas da Costa![movie_camera]()
Recursive Function in JavaScript — kudvenkat![movie_camera]()
What on Earth is Recursion? — Computerphile![movie_camera]()
Javascript Tutorial 34: Introduction To Recursion — codedamn![movie_camera]()
24. Collections and Generators
Articles
ES6 In Depth: Collections — Jason Orendorff![滚动]()
ES6 Collections: Using Map, Set, WeakMap, WeakSet — Kyle Pennell![滚动]()
ES6 WeakMaps, Sets, and WeakSets in Depth — Nicolás Bevacqua![滚动]()
Introduction to Sets in JavaScript — Alligator.io![滚动]()
Introduction to Maps in JavaScript — Alligator.io![滚动]()
Map, Set, WeakMap and WeakSet — JavaScript.Info![滚动]()
Maps in ES6 - A Quick Guide — Ben Mildren![滚动]()
ES6 — Set vs Array — What and when? — Maya Shavin![滚动]()
ES6 — Map vs Object — What and when? — Maya Shavin![滚动]()
ES6: Working with Sets in JavaScript — Dead Code Rising![滚动]()
Array vs Set vs Map vs Object — Real-time use cases in Javascript (ES6/ES7) — Rajesh Babu![滚动]()
How to create an array of unique values in JavaScript using Sets — Claire Parker-Jones![滚动]()
What You Should Know About ES6 Maps — Just Chris![滚动]()
ES6 Maps in Depth — Nicolás Bevacqua![滚动]()
Generator — MDN web docs![滚动]()
What are JavaScript Generators and how to use them — Vladislav Stepanov![滚动]()
Understanding JavaScript Generators With Examples — Arfat Salman![滚动]()
The Basics of ES6 Generators — Kyle Simpson![滚动]()
Videos
JavaScript ES6 / ES2015 Set, Map, WeakSet and WeakMap — Traversy Media![movie_camera]()
The Differences between ES6 Maps and Sets — Steve Griffith![movie_camera]()
Javascript Generators - THEY CHANGE EVERYTHING - ES6 Generators Harmony Generators — LearnCode.academy![movie_camera]()
25. Promises
Articles
Promise — MDN![滚动]()
JavaScript Promises for Dummies ― Jecelyn Yeen![滚动]()
Understanding promises in JavaScript — Gokul N K![滚动]()
Master the JavaScript Interview: What is a Promise? — Eric Elliott![滚动]()
An Overview of JavaScript Promises — Sandeep Panda![滚动]()
How to use Promises in JavaScript — Prashant Ram![滚动]()
Implementing Promises In JavaScript — Maciej Cieslar![滚动]()
JavaScript: Promises explained with simple real life analogies — Shruti Kapoor![滚动]()
Promises for Asynchronous Programming — Exploring JS![滚动]()
JavaScript Promises Explained By Gambling At A Casino — Kevin Kononenko![滚动]()
ES6 Promises: Patterns and Anti-Patterns — Bobby Brennan![滚动]()
A Simple Guide to ES6 Promises — Brandon Morelli![滚动]()
The ES6 Promises — Manoj Singh Negi![滚动]()
ES6 Promises in Depth — Nicolás Bevacqua![滚动]()
Videos
Let's Learn ES6 - Promises — Ryan Christiani![movie_camera]()
JavaScript ES6 / ES2015 Promises — Traversy Media![movie_camera]()
Promises — Fun Fun Function![movie_camera]()
Error Handling Promises in JavaScript — Fun Fun Function![movie_camera]()
Promises Part 1 - Topics of JavaScript/ES6 — The Coding Train![movie_camera]()
26. async/await
Articles
async/await — JavaScript.Info![滚动]()
Understanding async/await in Javascript — Gokul N K![滚动]()
Asynchronous Programming — Eloquent JavaScript![滚动]()
Exploring Async/Await Functions in JavaScript — Alligator.io![滚动]()
Asynchronous Javascript using async/await — Joy Warugu![滚动]()
Modern Asynchronous JavaScript with async/await — Flavio Copes![滚动]()
Asynchronous JavaScript: From Callback Hell to Async and Await — Demir Selmanovic![滚动]()
Javascript — ES8 Introducing async/await Functions — Ben Garrison![滚动]()
How to escape async/await hell — Aditya Agarwal![滚动]()
Understanding JavaScript’s async await — Nicolás Bevacqua![滚动]()
JavaScript Async/Await: Serial, Parallel and Complex Flow — TechBrij![滚动]()
Asynchronous Programming — Exploring JS![滚动]()
From JavaScript Promises to Async/Await: why bother? — Chris Nwamba![滚动]()
Flow Control in Modern JS: Callbacks to Promises to Async/Await — Craig Buckler![滚动]()
JavaScript: Promises and Why Async/Await Wins the Battle — Nick Parsons![滚动]()
Videos
Async + Await — Wes Bos![movie_camera]()
Asynchrony: Under the Hood — Shelley Vohr![movie_camera]()
async/await in JavaScript - What, Why and How — Fun Fun Function![movie_camera]()
async/await Part 1 - Topics of JavaScript/ES8 — The Coding Train![movie_camera]()
async/await Part 2 - Topics of JavaScript/ES8 — The Coding Train![movie_camera]()
27. Data Structures
Articles
Data Structures in JavaScript — Thon Ly![滚动]()
Algorithms and Data Structures in JavaScript — Oleksii Trekhleb![滚动]()
Data Structures: Objects and Arrays ― Chris Nwamba![滚动]()
Data structures in JavaScript — Benoit Vallon![滚动]()
Playing with Data Structures in Javascript — Anish K.![滚动]()
The Little Guide of Queue in JavaScript — Germán Cutraro![滚动]()
All algorithms writing with JavaScript in the book 'Algorithms Fourth Edition'![滚动]()
Collection of classic computer science paradigms in JavaScript![滚动]()
All the things you didn't know you wanted to know about data structures![滚动]()
Videos
Algorithms in JavaScript — Seth Koch![movie_camera]()
Algorithms In Javascript | Ace Your Interview — Eduonix Learning Solutions![movie_camera]()
Data Structures and Algorithms in JavaScript — freeCodeCamp![movie_camera]()
Learning JavaScript Data Structures and Algorithms: Sorting — Packt Video![movie_camera]()
28. Expensive Operation and Big O Notation
Articles
Big O Notation in Javascript — César Antón Dorantes![滚动]()
Time Complexity/Big O Notation — Tim Roberts![滚动]()
Big O in JavaScript — Gabriela Medina![滚动]()
Big O Search Algorithms in JavaScript — Bradley Braithwaite![滚动]()
Time Complexity Analysis in JavaScript — Jennifer Bland![滚动]()
Algorithms in plain English: time complexity and Big-O Notation — Michael Olorunnisola![滚动]()
Videos
JavaScript: Intro to Big O Notation and Function Runtime — Eric Traub![movie_camera]()
Essential Big O for JavaScript Developers — Dave Smith![movie_camera]()
Big O Notation - Time Complexity Analysis — WebTunings![movie_camera]()
29. Algorithms
Articles
Data Structures and Algorithms using ES6![滚动]()
Algorithms and data structures implemented in JavaScript with explanations and links to further readings![滚动]()
JS: Interview Algorithm![滚动]()
Algorithms in JavaScript — Thon Ly![滚动]()
JavaScript Objects, Square Brackets and Algorithms — Dmitri Grabov![滚动]()
Atwood's Law applied to CS101 - Classic algorithms and data structures implemented in JavaScript![滚动]()
Data Structures and Algorithms library in JavaScript![滚动]()
Collection of computer science algorithms and data structures written in JavaScript![滚动]()
30. Inheritance, Polymorphism and Code Reuse
Articles
Class inheritance, super — JavaScript.Info![滚动]()
Inheritance in JavaScript — MDN![滚动]()
Inheritance in JavaScript — Rupesh Mishra![滚动]()
Simple Inheritance with JavaScript — David Catuhe![滚动]()
JavaScript — Inheritance, delegation patterns and Object linking — NC Patro![滚动]()
Object Oriented JavaScript: Polymorphism with examples — Knoldus Blogs![滚动]()
Program Like Proteus — A beginner’s guide to polymorphism in Javascript — Sam Galson![滚动]()
Object-oriented JavaScript: A Deep Dive into ES6 Classes — Jeff Mott![滚动]()
Videos
Inheritance in JavaScript — kudvenkat![movie_camera]()
JavaScript ES6 Classes and Inheritance — Traversy Media![movie_camera]()
Polymorphism in JavaScript — kudvenkat![movie_camera]()
31. Design Patterns
Articles
4 JavaScript Design Patterns You Should Know — Devan Patel![滚动]()
JavaScript Design Patterns – Beginner's Guide to Mobile Web Development — Soumyajit Pathak![滚动]()
JavaScript Design Patterns — Akash Pal![滚动]()
Javascript Design Patterns: What They Are & How To Use Them — Patrick Simpson![滚动]()
JavaScript Design Patterns: Understanding Design Patterns in JavaScript - Sukhjinder Arora![滚动]()
All the 23 (GoF) design patterns implemented in Javascript — Felipe Beline![滚动]()
Learning JavaScript Design Patterns — Addy Osmani![滚动]()
Videos
32. Partial Applications, Currying, Compose and Pipe
Articles
Use function composition in JavaScript — Rémi![滚动]()
Currying in JavaScript ES6 — Adam Bene![滚动]()
Composition and Currying Elegance in JavaScript — Pragyan Das![滚动]()
Functional JavaScript: Function Composition For Every Day Use — Joel Thoms![滚动]()
Functional Composition: compose() and pipe() — Anton Paras![滚动]()
Why The Hipsters Compose Everything: Functional Composing In JavaScript — A. Sharif![滚动]()
A Gentle Introduction to Functional JavaScript pt III: Functions for making functions — James Sinclair![滚动]()
Curry And Compose (why you should be using something like ramda in your code) — jsanchesleao![滚动]()
Function Composition in JavaScript with Pipe — Andy Van Slaars![滚动]()
Practical Functional JavaScript with Ramda — Andrew D'Amelio, Yuri Takhteyev![滚动]()
The beauty in Partial Application, Currying, and Function Composition — Joel Thoms![滚动]()
Curry or Partial Application? — Eric Elliott![滚动]()
Partial Application in JavaScript — Ben Alman![滚动]()
Partial Application of Functions — Functional Reactive Ninja![滚动]()
Currying vs Partial Application — Deepak Gupta![滚动]()
Partial Application in ECMAScript 2015 — Ragan Wald![滚动]()
Functional Composition in Javascript — Joe Cortopassi![滚动]()
So You Want to be a Functional Programmer pt. I — Charles Scalfani![滚动]()
So You Want to be a Functional Programmer pt. II — Charles Scalfani![滚动]()
So You Want to be a Functional Programmer pt. III — Charles Scalfani![滚动]()
So You Want to be a Functional Programmer pt. IV — Charles Scalfani![滚动]()
So You Want to be a Functional Programmer pt. V — Charles Scalfani![滚动]()
Functional-Light JavaScript Chapter 3: Managing Function Inputs — Kyle Simpson![滚动]()
Videos
Compose vs Pipe: Functional Programming in JavaScript — Chyld Studios![movie_camera]()
JavaScript Functional Programing: Compose — Theodore Anderson![movie_camera]()
Function Composition - Functional JavaScript — NWCalvank![movie_camera]()
JavaScript Function Composition Explained — Theodore Anderson![movie_camera]()
Let's code with function composition — Fun Fun Function![movie_camera]()
Partial Application vs. Currying — NWCalvank![movie_camera]()
JavaScript Partial Application — Theodore Anderson![movie_camera]()
33. Clean Code
Articles
Clean Code concepts adapted for JavaScript — Ryan McDermott![滚动]()
JavaScript Clean Coding Best Practices — András Tóth![滚动]()
JavaScript Clean Code中的函数参数 - Kevin Peters![滚动]()
清洁代码JavaScript - Sarah Drasner![滚动]()
保持你的代码清洁 - 塞缪尔詹姆斯![滚动]()
使用现代JavaScript语法的最佳实践 - M. David Green![滚动]()

浙公网安备 33010602011771号