今天我们就来简单的复习一下 JavaScript
当中的正则表达式的一些内容,顺便记录记录,关于正则表达式,官网的说法是,正则表达式(regular expression
)描述了一种字符串匹配的模式(pattern
),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等
HTTP
模块是 Node.js
中非常重要的一个核心模块,通过 HTTP
模块,可以使用其 http.createServer()
方法创建一个 HTTP
服务器,也可以使用其 http.request()
方法创建一个 HTTP
客户端,Node.js
对 HTTP
协议及相关 API
的封装比较底层,其仅能处理流和消息,对于消息的处理,也仅解析成『报文头』和『报文体』,但是不解析实际的报文头和报文体内容,这样不仅解决了 HTTP
原本比较难用的特性,也可以支持更多的 HTTP
应用
本文内容主要分为两部分『客户端』与『服务端』,我们下面就一个一个来进行了解
为了让 Node.js
的文件可以相互调用,Node.js
提供了一个简单的模块系统,模块是 Node.js
应用程序的基本组成部分,文件和模块是一一对应的,换言之,一个 Node.js
文件就是一个模块,这个文件可能是 JavaScript
代码、JSON
或者编译过的 C/C++
扩展
按照惯例,我们先来看看 IntersectionObserver
到底是个什么东西,MDN 上的介绍的是,IntersectionObserver
接口(从属于 Intersection Observer API),提供了一种异步观察目标元素与其祖先元素或顶级文档视窗(viewport
)交叉状态的方法,祖先元素与视窗(viewport
)被称为根(root
)
当一个 IntersectionObserver
对象被创建时,其被配置为监听根中一段给定比例的可见区域,一旦 IntersectionObserver
被创建,则无法更改其配置,所以一个给定的观察者对象只能用来监听可见区域的特定变化值,然而你可以在同一个观察者对象中配置监听多个目标元素
JavaScript
语言自身只有字符串数据类型,没有二进制数据类型,但在处理像 TCP
流或文件流时,必须使用到二进制数据,因此在 Node.js
中,定义了一个 Buffer
类,该类用来创建一个专门存放二进制数据的缓存区,但是在深入展开之前,我们先来了解一下 JavaScript
当中的 ArrayBuffer
,来看看它与 Node.js
当中的 Buffer
到底有什么区别?
今天在网上看到一张图,是关于 CSS
常见的布局方式汇总的一张图,如下
最近刚好也在复习相关内容,所以就借着这个机会从新整理一下 CSS
当中比较常见的一些布局方式,就当是复习复习布局相关知识点,下面我们就一个一个来介绍,示例集合可见 demos 当中的 CSS
板块
本章我们继续来看 Node.js
当中的 EventEmitter
模块,在 Node.js
当中许多对象都会分发事件,比如一个 net.Server 对象会在每次有新连接时触发一个事件,一个 fs.readStream 对象会在文件被打开的时候触发一个事件,然而所有这些产生事件的对象都是 events.EventEmitter
的实例
本文主要分为以下几个部分,首先先介绍一下 EventEmitter
类,然后简单的过一遍源码,最后在自己动手来实现一个简单的 EventEmitter
模块,下面就让我们一步一步来实现吧
其实在工作过程中一直有个想法,就是好好地深入的去学习一下 Node.js
,无奈各种工作,家庭,生活和一些其他的原因导致此事一直搁浅,之前也有零零散散的学过,但是都算不得上深入,框架的使用也都只是停留在会用的阶段,底层的实现也没有知根知底的去探个究竟
所以打算在这 2019
年剩下的一段时间里,静下心来好好地学一下 Node.js
,补充一下相关知识和一些流行框架的内容,应该会是一个系列文章,记录的就是在学习 Node.js
过程当中的一些笔记,心得和想法吧,刚好也看到了 如何正确的学习 Node.js 这篇文章,就以这个为起点,从头开始吧
Update your browser to view this website correctly. Update my browser now