js堆和栈的区别_前端必懂的33个js难点,这个github项目告诉你,1万多Star!

9f5f9bf4091b60f542657bab50d28fdd.png

最近有个项目一直出现在GitHub的Trending页面,这个项目是为了帮助开发者掌握 JavaScript 概念而创立的。这些概念虽然不是硬性要求具备,但你可以把它作为未来可能用到的一部参考指南。

目前该项目在 GitHub 上已经获得 18828 个Star,1520 个Fork(项目地址:https://github.com/leonardomso/33-js-concepts)

该项目已经被翻译成10种语言,分别为中文、葡萄牙语、韩语、西班牙语、土耳其语、波斯语等,无论你是来自于哪一个国家,相信都可以找到你想要的版本。其中中文版地址为:https://github.com/stephentian/33-js-concepts

下面我们一起来详细了解下这个项目,该项目涵盖了以下33个大类:

  1. 调用堆栈
  2. 原始类型
  3. 值类型和引用类型
  4. 隐式, 显式, 名义和鸭子类型
  5. == 与 ===, typeof 与 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. 代码整洁之道

本一个大类里面都包含文章和视频两部分,这些文章和视频都是精选而出的,其中不乏有阮一峰、廖雪峰等IT专家的文章,相信一定可以帮助大家更好的学习和理解,如:

1. 调用堆栈

文章

Understanding Javascript Call Stack —— Gaurav Pandvia
JavaScript 如何工作:对引擎、运行时、调用堆栈的概述
理解 JavaScript 中的执行上下文和执行栈
这一次,彻底弄懂 JavaScript 执行机制
解读 JavaScript 之引擎、运行时和堆栈调用
Tasks, microtasks, queues and schedules

视频

JS 中的变量提升、堆栈内存及闭包详解 —— Acfun
事件循环模型 —— PHP 中文网
Javascript: the Call Stack explained — Coding Blocks India
The JS Call Stack Explained In 9 Minutes — Colt Steele
JavaScript Execution Stack — Codecademy
What is the Call Stack? — Eric Traub
The Call Stack — Kevin Drumm
Understanding JavaScript Execution — Codesmith
Call Stack & Event Loop — movies com

2. 原始类型

文章

原始数据 —— MDN
ECMAScript 原始类型 —— W3school
How numbers are encoded in JavaScript —— Dr. Axe
每一个 JavaScript 开发者应该了解的浮点知识 —— 颜海镜
JavaScript 标准参考教程(基本语法之数值) —— 阮一峰
The Secret Life of JavaScript Primitives —— Angus Croll

视频

javascript 六种数据类型 —— 慕课网
javascript 视频教程(数据类型) —— PHP 中文网
JavaScript Reference vs Primitive Types — Academind
JavaScript Primitive Types — Simon Sez IT
Javascript Primitive and Reference Types — Baljeet Singh
Value Types and Reference Types in JavaScript — Programming with Mosh
JavaScript Primitive Data Types — Avelx
Everything you never wanted to know about JavaScript numbers — Bartek Szopka

3. 值类型和引用类型

文章

ECMAScript 引用类型 —— W3school
js 中的值类型和引用类型的区别 —— 博客园
JavaScript 的值传递和引用传递 —— FunDebug
Primitive Types & Reference Types in JavaScript —— Bran van der Meer
JavaScript: Passing by Value or by Reference —— CSDN
js 值引用和值复制 —— SegmentFault
js- 引用和复制(传值和传址) —— CSDN

视频

Javascript Pass by Value vs Pass by Reference — techsith
JavaScript Value vs Reference Types — Programming with Mosh
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值