摘要: 基础很重要啊!

Fundebug经授权转载,版权归原作者所有。

简介

这个项目是为了帮助开发者掌握 JavaScript 概念而创立的。它不是必备,但在未来学习(JavaScript)中,可以作为一篇指南。

本篇文章是参照 @leonardomso 创立,英文版项目地址在这里
由于原版资源都要FQ,所以本人创立一个中文版,附上关于这些概念在国内的一些文章和视频。
若有觉得更好的文章或者视频,可以贡献出来,觉得有误的,请联系我删除。

更新

若有觉得更好的文章或者视频,可以贡献出来,觉得有误的,请联系我删除。

  • 文章的排序优化,前面的文章是介绍概念,后面的文章是深入解读。
  • 将原文的 "高阶函数" 和 "map, reduce, filter" 合并为 "map, reduce, filter 等高阶函数"
  • 增加 "promise" 概念(替换删除的 "高阶函数")
  • 2018-10-24 更新:@BuptStEve 贡献的三篇关于“函数式编程”方面的文章

目录

  • 调用堆栈
  • 原始类型
  • 值类型和引用类型
  • 隐式, 显式, 名义和鸭子类型
  • == 与 ===, typeof 与 instanceof
  • this, call, apply 和 bind
  • 函数作用域, 块级作用域和词法作用域
  • 闭包
  • map, reduce, filter 等高阶函数
  • 表达式和语句
  • 变量提升
  • Promise
  • 立即执行函数, 模块化, 命名空间
  • 递归
  • 算法
  • 数据结构
  • 消息队列和事件循环
  • setTimeout, setInterval 和 requestAnimationFrame
  • 继承, 多态和代码复用
  • 按位操作符, 类数组对象和类型化数组
  • DOM 树和渲染过程
  • new 与构造函数, instanceof 与实例
  • 原型继承与原型链
  • Object.create 和 Object.assign
  • 工厂函数和类
  • 设计模式
  • Memoization
  • 纯函数, 函数副作用和状态变化
  • 耗性能操作和时间复杂度
  • JavaScript 引擎
  • 二进制, 十进制, 十六进制, 科学记数法
  • 偏函数, 柯里化, Compose 和 Pipe
  • 代码整洁之道

1. 调用堆栈

文章

视频

2. 原始类型

文章

视频

3. 值类型和引用类型

文章

4. 隐式, 显式, 名义和鸭子类型

文章

视频

5. == vs ===, typeof vs instanceof

文章

6. this, call, apply 和 bind

文章

视频

7. 函数作用域, 块级作用域和词法作用域

文章

8. 闭包

文章

视频

9. map, reduce, filter 等高阶函数

文章

10. 表达式和语句

文章

11. 变量提升

文章

12. Promise

文章

视频

13. 立即执行函数, 模块化, 命名空间

文章

14. 递归

文章

15. 算法

文章

视频

16. 数据结构

文章

视频

17. 消息队列和事件循环

文章

18. setTimeout, setInterval 和 requestAnimationFrame

文章

视频

19. 继承, 多态和代码复用

文章

20. 按位操作符, 类数组对象和类型化数组

文章

21. DOM 树和渲染过程

文章

视频

22. new 与构造函数, instanceof 与实例

文章

视频

23. 原型继承与原型链

文章

视频

24. Object.create 和 Object.assign

文章

25. 工厂函数和类

文章

26. 设计模式

文章

视频

27. Memoization

文章

28. 纯函数, 函数副作用和状态变化

文章

29. 耗性能操作和时间复杂度

文章

30. JavaScript 引擎

文章

31. 二进制, 十六进制, 十进制, 科学记数法

文章

视频

32. 偏函数, 柯里化, Compose 和 Pipe

文章

33. 代码整洁之道

文章

关于Fundebug

Fundebug专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了7亿+错误事件,得到了Google、360、金山软件、百姓网等众多知名用户的认可。欢迎免费试用!

每个JavaScript工程师都应懂的33个概念的更多相关文章

  1. JavaScript工程师都应懂的33个概念

    最近福利发的有点多啊,各种硬干货,小伙伴们是不是觉得很爽啊.Github真的蕴含着各种各样的宝藏,难怪各个大厂也都纷纷贡献自己的代码到Github上. 所以各种干货还是会源源不断的po给大家,觉得有帮 ...

  2. 每个 JavaScript 工程师都应懂的33个概念

    简介 这个项目是为了帮助开发者掌握 JavaScript 概念而创立的.它不是必备,但在未来学习(JavaScript)中,可以作为一篇指南. 本篇文章是参照 @leonardomso 创立,英文版项 ...

  3. JavaScript开发者应懂的33个概念

    简介 这个项目是为了帮助开发者掌握 JavaScript 概念而创立的.它不是必备,但在未来学习(JavaScript)中,可以作为一篇指南. 本篇文章是参照 @leonardomso 创立,英文版项 ...

  4. 每个JavaScript开发人员应该知道的33个概念

    每个JavaScript开发人员应该知道的33个概念 介绍 创建此存储库的目的是帮助开发人员在JavaScript中掌握他们的概念.这不是一项要求,而是未来研究的指南.它基于Stephen Curti ...

  5. 每个 JavaScript 开发者都该懂的 Unicode

    英文原文标题:what-every-javascript-developer-should-know-about-unicode (译者注:本文含有Unicode辅助平面的特殊字符,部分浏览器可能无法 ...

  6. 每个 JavaScript 工程师都应当知道的 10 个面试题

    1. 能说出来两种对于 JavaScript 工程师很重要的编程范式么? JavaScript 是一门多范式(multi-paradigm)的编程语言,它既支持命令式(imperative)/面向过程 ...

  7. JavaScript应懂的概念

    目录 垃圾回收 函数作用域, 块级作用域和词法作用域 调用堆栈 原始类型 值类型和引用类型 隐式, 显式, 名义和鸭子类型 == 与 ===, typeof 与 instanceof this, ca ...

  8. JavaScript一看就懂(2)闭包

    认识闭包之前需要先了解作用域,如果你对作用域还没有足够了解,请移步JavaScript一看就懂(1)作用域 什么是闭包? 我们可以先简单认为:一个函数a定义在另一个函数b里面,这个函数a就是闭包: f ...

  9. WEB架构师成长之路-架构师都要懂哪些知识 转

    Web架构师究竟都要学些什么?具备哪些能力呢?先网上查查架构师的大概的定义,参见架构师修炼之道这篇文章,写的还不错,再查查公司招聘Web架构师的要求. 总结起来大概有下面几点技能要求: 一. 架构师有 ...

随机推荐

  1. java 日志框架

    1.java常用日志框架介绍: https://www.cnblogs.com/chenhongliang/p/5312517.html 2.java各类日志组件汇总: https://blog.cs ...

  2. workman的学习总结

    我们知道php主要是用来做web应用的,而且平时使用的都是都是和其他的web服务器来结合使用,比如和apache,nginx和apache的时候,是作为apache的一个动态模块来加载,和nginx的 ...

  3. jQuery应用实例2:表格隔行换色

    这里是用JS实现的:http://www.cnblogs.com/xuyiqing/p/8376312.html 接下来利用上一篇提到的选择器利用jQuery实现: 发现原来多行代码这里只需要两行: ...

  4. ASP.NET Web API实现微信公众平台开发(三)自定义菜单

    承接之前的流程,在完成服务器绑定和获取access_token之后,本文主要讲述如何实现微信自定义菜单. 官方示例效果 开始之前 .自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单. ...

  5. [Objective-C语言教程]协议(31)

    Objective-C允许定义协议,声明预期用于特定情况的方法. 协议在符合协议的类中实现. 一个简单的例子是网络URL处理类,它将具有一个协议,其中包含processCompleted委托方法等方法 ...

  6. IO流查找文件然后写入TXT文档

    今天领导让分析日志,把日志中所有登录过的员工信息都拿出来.于是.把日志摘下来谢了这段代码 import java.io.BufferedReader;import java.io.BufferedWr ...

  7. Ubantu常用命令

    Ubantu常用命令 ctrl alt t   :打开终端 ctrl d : 关闭终端 F11   : 终端全屏,再按一次退出全屏 Super(即win)                        ...

  8. redis内部分享ppt

    作者:青客宝团队 Redis:最好的缓存数据库 说Redis是缓存服务,估计有些人会不开心,因为Redis也可以把数据库持久化,但是在大多数情况Redis的竞争力是提供缓存服务.说到缓存服务必然会想到 ...

  9. Eclipse markers窗口使用

    项目提示有错误,又不知道错误是哪里导致的,这时你可以打开eclipse的markers窗口查看错误信息或者警告信息 markers窗口提示信息: 到项目工程目录的settings目录下找到org.ec ...

  10. (剑指Offer)面试题45:圆圈中最后剩下的数字

    题目: 0,1,...n-1这n个数字排成一个圆圈,从数字0开始每次从这个圆圈里删除第m个数字,求出这个圆圈里剩下的最后一个数字. 思路: 1.环形链表模拟圆圈 创建一个n个节点的环形链表,然后每次在 ...