
JS高程读书笔记
文章平均质量分 95
小丞同学
无比热爱,来日方长!学习方向:前端
展开
-
新生代总结 JavaScript 运行机制解析
新生代总结 JavaScript 运行机制解析大家好,我是小丞同学,一名准大二的前端爱好者 这篇文章将带你一起学习理解 JavaScript 运行机制愿你忠于自己,热爱生活引言在一些面试中,我们或许会被问到这样的问题简述一下 JavaScript 的运行机制?你还有可能会被问这样简单的代码setTimeout(function () { console.log('定时器开始啦')});new Promise(function (r原创 2021-08-22 20:58:13 · 3470 阅读 · 39 评论 -
JS 继承的7种方法,你学会了吗?
JS 继承的7种方法,你学会了吗?大家好,我是小丞同学,本文主要写 JavaScript 中的 7 种继承方式,深入理解每种方式所存在的问题同时新的方式是如何解决问题的非常感谢你的阅读,不对的地方欢迎指正愿你生活明朗,万物可爱前言在上一篇文章中我们讲解了原型链的机制以及原型相关的一些属性,而与原型链息息相关的就是继承了,为什么这么说呢?在《JavaScript 高级程序设计》上,有这么一句话“实现继承是 ECMAScript 唯一原创 2021-08-20 08:01:18 · 662 阅读 · 6 评论 -
三张图轻松KO⚡ JS 原型和原型链
三张图轻松KO⚡ JS 原型和原型链大家好,我是小丞同学,这一篇是 JS 高程精读系列的第 n 篇文章,主要解释 JS 中的原型和原型链 非常感谢你的阅读,不对的地方欢迎指正 愿你生活明朗,万物可爱引言原型和原型链据说是面试常考的东西(没面试过,不大清楚),对于初学者来说有一定的难度,但是其实它也非常的简单,几个概念理解好了就没什么问题了,我们先从一个例子出发,然后再引出相关的知识点,下面我们先来看一个例子先定义一个类,添加一些属性和方法class S原创 2021-08-18 07:49:15 · 634 阅读 · 7 评论 -
【深扒】深入理解 JavaScript 中的异步编程
大家好,我是小丞同学,本文将会带你理解和感受 Generator 函数的异步应用引言我们先引出一个非常常见的场景:对服务器端返回的数据进行操作与服务器端交互的过程是一个异步操作如果按照正常的代码编写的话,你可能会写出这样的代码我也不知道打的什么,大概意思就是异步请求结果返回赋值给 data 然后输出,let data = ajax("http://127.0.0.1",ab) //随便写的console.log(data)虽然整个思路看起来没什么毛病,对吧。但是它就是不行的,获取数据..原创 2021-08-15 13:53:22 · 3096 阅读 · 8 评论 -
【深扒】深入理解 JavaScript 中的生成器
大家好,我是小丞同学,本文将会带你理解 ES6 中的生成器。写在前面在上篇文章中,我们深入了理解了迭代器的原理和作用,这一篇我们来深扒与迭代器息息相关的生成器。关于生成器有这样的描述红宝书:生成器是 ES6 新增的一个极为灵活的结构,拥有在一个函数块内暂停和恢复代码执行的能力阮一峰老师:Generator 函数是 ES6 提供的一种异步编程解决方案从上面的两段话中,我们可以知道生成器有着至少两个作用:打破完整运行,拥有暂停和启动的能力解决异步操作下面我们来看看生成器是如何实原创 2021-08-13 08:16:31 · 1827 阅读 · 14 评论 -
原生 JavaScript 手写数组 API
本文将会先了解数组 API 的用法再模拟实现这些 API ,如果各位大佬觉得有什么不对的地方麻烦指点以下!1. forEach 方法这个方法会对数组元素的每一项运行传入的函数,没有返回值。相当于使用 for 循环来遍历数组。如:let numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];numbers.forEach((item, index, array) => { // 执行某些操作 item += 2})console.log(number.原创 2021-08-02 08:56:45 · 920 阅读 · 15 评论 -
浅析 Map 和 WeakMap 区别以及使用场景
希望这一篇文章能让你对 Map 有更好的理解,或者能够帮你理解 Map 和 WeakMap这篇文章会先从Map再到WeakMap一、为什么是 Map ?1. 传统对象结构Map本质上是一个键值对的集合。和传统对象结构相比,传统的对象只能用字符串作为键名,这就在使用上造成了很大的限制了。这也是新增 Map 的原因之一。const data = {};// elemen..原创 2021-07-25 20:00:42 · 1575 阅读 · 9 评论 -
【深扒】 JavaScript 中的迭代器
读懂 JavaScript 中的迭代器大家好,我是小丞同学,本文将会带你深入理解 ES6 中的迭代器。发现问题在 ES6 中提出迭代器模式之前,传统迭代存在着怎样的问题?为什么要新增迭代器呢?我们先来看几个例子let arr = ['小', '丞', '呀']这是一个简单的数组,如果要获取它的每一项数据,我们可以采用 for 循环,当然也可以采用 forEach 循环,很酷关于 forEach 循环在之前的文章有解释,原文连接当纯这样还没什么问题我们在看下面代码原创 2021-08-11 07:25:23 · 1611 阅读 · 15 评论 -
《JavaScript高级程序设计(第四版)》学习笔记(五)第5章
这是阅读《JavaScript高级程序设计(第四版)》的第五天,本书已阅读 135/865第五章:基本引用类型看到开头有一句话就离谱:“函数也是一种引用类型,但是内容太多了,一章放不下,所以后面开了一章!!!”离谱!牢骚话写了一会发现,这一章好多要记得,这难搞啊老是cv我很讨厌!5.1 Date要创建日期对象,需要使用 new 操作符来调用 Date 构造函数let n原创 2021-07-18 10:54:56 · 789 阅读 · 6 评论 -
《JavaScript高级程序设计(第四版)》学习笔记(四)第4章
《JavaScript高级程序设计(第四版)》学习笔记(四)第4章这是阅读《JavaScript高级程序设计(第四版)》的第四天,本书已阅读 102/865第四章:变量、作用域与内存4.1 原始值与引用值原始值:最简单的数据。保存原始值的变量是按值访问的,因为我们操作的就是存储在变量中的实际值;引用值:由多个值构成的对象。保存引用值的变量是按引用访问的。在操作对象时,实原创 2021-07-17 10:59:08 · 1168 阅读 · 2 评论 -
《JavaScript高级程序设计(第四版)》学习笔记(三)第3章(续)
《JavaScript高级程序设计(第四版)》学习笔记(三)第3章(续)这是阅读《JavaScript高级程序设计(第四版)》的第三天,本书已阅读 82/865第三章真的好多,但是有些又很基础有点乏味,最近有点事又很忙,呜呜~更文慢了所以分了2部分来写,不然上一篇要拖好久了做了个丑丑的封面第三章:语言基础(续)3.5 操作符3.5.1 一元操作符只能操作一个值的操作符叫一元原创 2021-07-16 19:47:56 · 1204 阅读 · 12 评论 -
《JavaScript高级程序设计(第四版)》学习笔记(二)第3章
《JavaScript高级程序设计(第四版)》学习笔记(二)第3章这是阅读《JavaScript高级程序设计(第四版)》的第二天,本书已阅读 56/865第三章:语言基础3.1 语法个人感觉 ECMAScript 的语法挺简单的,学过 C 之类都能很容易的上手3.1.1 区分大小写ECMAScript 中一切都区分大小写例如:test和Test是两个不同的变量注意:原创 2021-07-15 22:45:05 · 1219 阅读 · 17 评论 -
《Javascript高级程序设计(第四版)》学习笔记(一)第1、2章
第一章:什么是JavaScript1. JavaScript的实现完整的 JavaScript 实现包含以下几个部分:核心(ECMAScript)文档对象模型(DOM)浏览器对象模型(BOM)1.1 ECMAScript是由 ECMA-262 定义的,ECMAScript 与 Web 浏览器没有依赖关系,Web浏览器只是 ECMAScript 实现可能的宿主环境之一。原创 2021-07-13 23:42:08 · 1549 阅读 · 13 评论