EventEmitter简单实现
Node 的 Events 模块只定义了一个类,就是 EventEmitter,这个类在很多Node 本身以及第三方模块中大量使用,通常是用作基类被继承。
本内容,我们来把EventEmitter的on,once,off,emit方法进行简单的手写实现。
Node 的 Events 模块只定义了一个类,就是 EventEmitter,这个类在很多Node 本身以及第三方模块中大量使用,通常是用作基类被继承。
本内容,我们来把EventEmitter的on,once,off,emit方法进行简单的手写实现。
接下来,我们应该看一下Axios类中究竟做了什么,到底是怎么发送请求的。因为Axios类中应用到了Interceptor,所以我们要先看一下拦截器是怎么实现的。
很遗憾,至于发送请求的详细内容需要到dispatchRequest方法和xhr适配器中才能看到了,在本章节Axios类中我们只能说到调用dispatchRequest方法这一步,所以发送请求的详细内容要留到下一章节来说了,先来看一下本章节的内容吧。
在上一节的入口文件中,我们都知道axios是基于默认配置创建的,那么这个默认配置到底配置了哪些东西呢?
这一节,我们就来看一看lib/defaults.js的源码内容。
本系列内容基于axios0.18.0版本,只对核心内容进行梳理,不会具体到每一个方法细节。至于一些辅助方法等内容,只会在碰到的时候说下这个方法做了什么,不会单独去看辅助方法。新版本的axios对于一些部分进行了修改,但大致是一样的。
axios的适配器adapter分别对xhr和http做了处理,我们只关注用于浏览器端的xhr,对应用于node的http内容不做考虑。
作为一个前端开发人员,不免也想去窥探一下后端的世界。后端技术广袤无边,语言反而感觉不那么重要了。前端肯定最熟悉JavaScript,在不切换语言的情况下去学习后端,可以降低一些学习成本。所以准备通过学习NodeJs后端开发来更好的了解后端,而NestJs又是最火热的后端框架之一,学它不会有错的。
大家都会用到@vue/cli或者create-react-app这种脚手架,但是每个公司都或多或少有一些自己的基础框架。每次都从头搭建一个项目比较麻烦,所以准备搭建一个简单的脚手架方便生成项目代码。
动态规划是刷题过程中的常见算法,有难有易,简单的如斐波那契数列问题很容易找到规律,难一些的就很容易钻牛角尖了,而背包问题又是动态规划的一个典型问题,这里就拿比较典型的01背包与完全背包问题做一下记录。
最近看到这道经典面试题[1,2,3].map(parseInt),本来想的很简单,不就是把1,2,3分别传入parseInt然后返回嘛,结果不应该是[1,2,3]嘛,但是看了答案才发现不是这么简单,还是要细心点多想想。。。
Promise是ES6的核心内容,有效解决回调地狱的问题,我们在此解读Promise/A+规范,并手写实现一个Promsie。
文章内容主要来源于实现一个完美符合Promise/A+规范的Promise
个人博客主要作为笔记记录使用。如不允许转载,烦请联系删除。感谢。
之前做过常用排序算法的python实现,因为python的语法简单,个人喜欢用python去练习算法题目,毕竟自己是以JavaScript作为主力开发语言的,python仅仅知道基础语法,所以以后准备用JavaScript去练习算法。先把常用排序算法用JavaScript重新实现一遍吧。