![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
前端
文章平均质量分 73
菜园小饼0.0
这个作者很懒,什么都没留下…
展开
-
手写EventEmitter
EventEmitter是Node.js的核心模块events中的类。核心:事件触发与事件监听器功能的封装。是典型的发布订阅模式,实现了事件调度中心。怎么手写实现EventEmitter类呢?思路:当执行on函数时,将回调函数保存起来,等emit函数触发事件之后,再执行回调函数。这样就实现了事件的监听以及订阅了。class EventEmitter{ constructor(){ //事件监听函数保存的地方 this.events={}; } ...原创 2021-07-07 23:18:49 · 459 阅读 · 2 评论 -
学习发布订阅模式和观察者模式
发布订阅模式之前学习的手写EventEmitter就是发布订阅模式,把实现的EventEmitter类的函数名称修改一下,就比较好理解了。on函数即subscribe函数用于注册事件订阅行为,emit函数即publish函数,用于发布者发布事件。订阅者通过subscribe进行订阅。class PubSub{ constructor(){ //维护事件及订阅行为 this.events={}; } //@param是对函数参数进行解释作用 /...原创 2021-07-07 23:10:58 · 151 阅读 · 1 评论 -
学习JS的数据属性和访问器属性
ECMAScript`中有两类属性,分别是`数据属性`与`选择器属性1.1 数据属性数据属性包含一个数据值的位置。在这个位置可以读取和写入值。数据属性有 4 个描述其行为的 特性。 [[Configurable]]:表示能否通过delete删除属性从而重新定义属性,能否修改属性的特性,或者能否把属性修改为访问器属性。 [[Enumerable]]:表示能否通过for-in循环返回属性。 [[Writable]]:表示能否修改属性的值。 [[Value]]:包含这.原创 2021-07-04 17:30:00 · 91 阅读 · 0 评论 -
JS中的let、var和const的区别
ES6 提出了两个新的声明变量的命令:let和const。其中,let完全可以取代var,因为两者语义相同,而且let没有副作用。作用域let和const声明的变量属于块作用域、var声明的变量作用域是全局或者整个封闭函数。举例var x = 1 //声明在全局作用域function foo(){ var x = 2 //声明在函数作用域 console.log('two',x)}console.log('one',x)foo()//output:one 1 t...原创 2021-05-07 22:44:27 · 108 阅读 · 0 评论 -
Nginx的浅识
文章目录前言一、Nginx是什么?静态HTTP服务器反向代理服务器二、根据域名映射不同服务器1.配置详解2.重启nginx2.proxy_pass详解总结前言一、Nginx是什么?Nginx是一个http服务器。是一个使用c语言开发的高性能的http服务器及反向代理服务器。官网手册链接静态HTTP服务器首先,Nginx是一个HTTP服务器,可以将服务器上的静态文件(如HTML、图片)通过HTTP协议展现给客户端。配置:server { listen 80; # 端口号 loca.原创 2021-02-22 19:07:35 · 145 阅读 · 0 评论 -
【前端第1篇】Angular自定义组件
前言最近做的Angular项目中有一个功能——数据库下载,在不同的组件中都有用到,所以期望将其抽象成一个公用组件,将代码得以复用。主要涉及到以下知识点:创建组件、组件的基本概念、组件与模块、引用组件、使用组件、组件交互等。创建组件在components文件夹下创建一个数据库下载的公用组件。打开命令行(使用vscode编辑器的小伙可以直接使用Ctrl+` 快捷键打开终端,然后一路跳转到components文件夹:cd src\app\components在此目录下执行指令:ng g c es-原创 2021-02-19 22:34:59 · 424 阅读 · 2 评论