![](https://img-blog.csdnimg.cn/20210504030639716.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Node.js
Node.js相关知识
hamling620
天地不仁,以万物刍狗;圣人不仁,以百姓刍狗。
展开
-
CommonJS模块导入机制
CommonJS模块导入机制在CommonJS中我们通过require方法导入模块,通过module.exports导出模块,module.exports默认的出口。我们也可以通过exports.属性(跟this.属性是同样效果)导出一个变量。之所以能这样使用,是因为模块中exports和this对象都与模块(module)的exports属性指向同一块内存地址。如果把exports或者this赋值为一个变量,那么exports和this将不再指向module.exports引用的内存地址,那么通过那原创 2021-05-04 02:45:41 · 732 阅读 · 0 评论 -
TypeScript实现栈结构
使用TypeScript实现栈结构一. 栈的基本概念栈(Stack)是一种后进先出(Last In First Out)的数据结构。它是从栈顶插入(push)元素,我们称之为入栈,从栈顶推出(pop)元素,我们称之为出栈。栈的用途非常广泛,生活中我们喝红酒总是先喝掉后倒入的,后喝掉先倒入的,一摞书,我们总是先去除最上面的书。编程中栈被用于函数调用栈以及浏览器历史记录栈。二. 栈的实现interface StackData<T> { [index: number]: T;}c原创 2021-05-04 01:35:35 · 465 阅读 · 0 评论 -
发布订阅EventEmitter(Typescript)
发布订阅模式中的EventEmitter(Typescript)模块Node.js 的events模块,运用非常广泛。这里面实现它四个最主要的方法:on、emit、off和once方法。其中,除了emit返回布尔值(true表示触发成功),其它都返回this,表示实例本身,以此可以进行链式调用。once方法的实现实际上运用了面向切面编程(AOP)的思想,执行原有的listener,并把当前的方法on代理到listener的fn属性上,从而在off的时候可以去掉新注册的on方法。interface L原创 2021-05-03 23:55:53 · 1255 阅读 · 1 评论