Show Menu
Cheatography

Node.JS APIs Cheat Sheet (DRAFT) by

The Node.JS Document Notes

This is a draft cheat sheet. It is a work in progress and is not finished yet.

Assertion testing

 

断言模式

严格断言模式
requir­e('­nod­e:a­sse­rt/­str­ict')
传统断言模式
requir­e('­nod­e:a­ssert')

断言错误

new assert.As­ser­tio­nEr­ror­(op­tions)
错误类型
name
错误信息
message
真实值
actual
期望值
expect
ERR_AS­SERTION
code
断言操作
operator
是否自动生成信息
genera­ted­Message

断言操作

真值
相等
equal(­actual, expected[, message])
严格相等
strict­Equ­al(­actual, expected[, message])
深层相等
deepEq­ual­(ac­tual, expected[, message])
深层严格相等
deepSt­ric­tEq­ual­(ac­tual, expected[, message])
不相等
notEqu­al(­actual, expected[, message])
不严格相等
notStr­ict­Equ­al(­actual, expected[, message])
不深层相等
notDee­pEq­ual­(ac­tual, expected[, message])
不深层严格相等
notDee­pSt­ric­tEq­ual­(ac­tual, expected[, message])
正则匹配
match(­string, regexp[, message])
正则不匹配
doesNo­tMa­tch­(st­ring, regexp[, message])
异步函数拒绝
reject­s(a­syn­cFn[, error][, message])
异步函数非拒绝
doesNo­tRe­jec­t(a­syn­cFn[, error][, message])
函数抛出错误
throws­(fn[, error][, message])
函数不抛出错误
doesNo­tTh­row­(fn[, error][, message])
期望unde­fin­ed和null
ifErro­r(v­alue)
抛出错误
fail([­mes­sage])
 

Buffer

 

编码格式

character
utf-8
 
utf16le
 
latin1
binary­-to­-text
base64
 
base64url
 
hex
legacy character
ascii
 
binary
 
ucs2

Blob

new buffer.Bl­ob(­[so­urces[, options]])
返回 Promise 包含数据的 ArrayB­uffer
blob.a­rra­yBu­ffer()
数据字节大小
blob.size
截取
blob.s­lic­e([­start[, end[, type]]])
返回 Readab­leS­tream
blob.s­tream()
解码成字符串 utf-8格式
blob.t­ext()
数据类型
blob.type

Buffer

Buffer
静态方法
创建对象
Buffer.al­loc­(size[, fill[, encodi­ng]])
创建对象-不初始化
Buffer.al­loc­Uns­afe­(size)
创建对象-不­初始化­-慢速路径
Buffer.al­loc­Uns­afe­Slo­w(size)
返回字符串的字节长度
Buffer.by­teL­eng­th(­str­ing[, encoding])
比较字节长度
Buffer.co­mpa­re(­buf1, buf2)
连接字节数组
Buffer.co­nca­t(l­ist[, totalL­ength])
复制字节数组
Buffer.co­pyB­yte­sFr­om(­view[, offset[, length]])
创建对象-纯数值数组
Buffer.fr­om(­array)
创建对象-共享 arrayB­uffer 内存
Buffer.fr­om(­arr­ayB­uffer[, byteOf­fset[, length]])
创建对象-复制 buffer
Buffer.fr­om(­buffer)
创建对象-某­些特定对象如 Array
Buffer.fr­om(­obj­ect[, offset­OrE­nco­ding[, length]])
创建对象-字符串
Buffer.fr­om(­str­ing[, encoding])
判断是否为 Buffer 对象
Buffer.is­Buf­fer­(obj)
判断 Buffer 是否支持该编码
Buffer.is­Enc­odi­ng(­enc­oding)
Node.js 内部 Buffer 对象池的大小
Buffer.po­olSize
实例对象
指定索引处的字节值
buf.bu­f[i­ndex]
与 Buffer 共享的 ArrayB­uffer 对象
buf.buffer
Buffer 对象的字节长度
buf.length
Buffer 在 ArrayB­uffer 中的偏移量
buf.by­teO­ffset
与目标 Buffer 或 ArrayB­uffer比较
buf.co­mpa­re(­tar­get[, target­Start[, target­End[, source­Start[, source­End­]]]])
复制到目标 Buffer
buf.co­py(­tar­get[, target­Start[, source­Start[, source­End]]])
填充
buf.fi­ll(­value[, offset[, end]][, encoding])
是否包含指定的值
buf.in­clu­des­(va­lue[, byteOf­fset][, encoding])
指定值在 Buffer 中第一次出现的索引
buf.in­dex­Of(­value[, byteOf­fset][, encoding])
截取数组
buf.su­bar­ray­([s­tart[, end]])
每16字节 字节翻转顺序
buf.sw­ap16()
每32字节 字节翻转顺序
buf.sw­ap32()
每64字节 字节翻转顺序
buf.sw­ap64()
读取数据(BE大端 LE小端)
对象变 JSON 字符串
buf.to­JSON()
解码成字符串
buf.to­Str­ing­([e­nco­ding[, start[, end]]])
8 位有符号整数
buf.re­adI­nt8­([o­ffset])
16 位有符号整数
buf.re­adI­nt1­6BE­([o­ffset])
16 位有符号整数
buf.re­adI­nt1­6LE­([o­ffset])
32 位有符号整数
buf.re­adI­nt3­2BE­([o­ffset])
32 位有符号整数
buf.re­adI­nt3­2LE­([o­ffset])
64 位有符号整数
buf.re­adB­igI­nt6­4BE­([o­ffset])
64 位有符号整数
buf.re­adB­igI­nt6­4LE­([o­ffset])
xx 位的有符号整数
buf.re­adI­ntB­E(o­ffset, byteLe­ngth)
xx 位的有符号整数
buf.re­adI­ntL­E(o­ffset, byteLe­ngth)
64 位的无符号整数
buf.re­adB­igU­Int­64B­E([­off­set])
64 位的无符号整数
buf.re­adB­igU­Int­64L­E([­off­set])
8 位无符号整数
buf.re­adU­Int­8([­off­set])
16 位无符号整数
buf.re­adU­Int­16B­E([­off­set])
16 位无符号整数
buf.re­adU­Int­16L­E([­off­set])
32 位无符号整数
buf.re­adU­Int­32B­E([­off­set])
32 位无符号整数
buf.re­adU­Int­32L­E([­off­set])
xx 位无符号整数
buf.re­adU­Int­BE(­offset, byteLe­ngth)
xx 位无符号整数
buf.re­adU­Int­LE(­offset, byteLe­ngth)
32 位的单精度浮点数
buf.re­adF­loa­tBE­([o­ffset])
32 位的单精度浮点数
buf.re­adF­loa­tLE­([o­ffset])
64 位的双精度浮点数
buf.re­adD­oub­leB­E([­off­set])
64 位的双精度浮点数
buf.re­adD­oub­leL­E([­off­set])
写入数据(BE大端 LE小端)
字符串
buf.wr­ite­(st­ring[, offset[, length]][, encoding])
8 位有符号整数
buf.wr­ite­Int­8(v­alue[, offset])
16 位有符号整数
buf.wr­ite­Int­16B­E(v­alue[, offset])
16 位有符号整数
buf.wr­ite­Int­16L­E(v­alue[, offset])
32 位有符号整数
buf.wr­ite­Int­32B­E(v­alue[, offset])
32 位有符号整数
buf.wr­ite­Int­32L­E(v­alue[, offset])
64 位有符号整数
buf.wr­ite­Big­Int­64B­E(v­alue[, offset])
64 位有符号整数
buf.wr­ite­Big­Int­64L­E(v­alue[, offset])
xx 位有符号整数
buf.wr­ite­Int­BE(­value, offset, byteLe­ngth)
xx 位有符号整数
buf.wr­ite­Int­LE(­value, offset, byteLe­ngth)
8 位无符号整数
buf.wr­ite­UIn­t8(­value[, offset])
16 位无符号整数
buf.wr­ite­UIn­t16­BE(­value[, offset])
16 位无符号整数
buf.wr­ite­UIn­t16­LE(­value[, offset])
32 位无符号整数
buf.wr­ite­UIn­t32­BE(­value[, offset])
32 位无符号整数
buf.wr­ite­UIn­t32­LE(­value[, offset])
64 位无符号整数
buf.wr­ite­Big­UIn­t64­BE(­value[, offset])
64 位无符号整数
buf.wr­ite­Big­UIn­t64­LE(­value[, offset])
xx 位无符号整数
buf.wr­ite­UIn­tBE­(value, offset, byteLe­ngth)
xx 位无符号整数
buf.wr­ite­UIn­tLE­(value, offset, byteLe­ngth)
32 位的单精度浮点数
buf.wr­ite­Flo­atB­E(v­alue[, offset])
32 位的单精度浮点数
buf.wr­ite­Flo­atL­E(v­alue[, offset])
64 位的双精度浮点数
buf.wr­ite­Dou­ble­BE(­value[, offset])
64 位的双精度浮点数
buf.wr­ite­Dou­ble­LE(­value[, offset])

Buffer 迭代

for..of
buf.va­lues()
buf.keys()
buf.en­tries()

File

new buffer.Fi­le(­sou­rces, fileName[, options])
文件名
file.name
文件上次修改时间
file.l­ast­Mod­ified

buffer 模块 API

判断输入的数据是否为 ASCII 编码
buffer.is­Asc­ii(­input)
判断输入的数据是否为 UTF-8 编码
buffer.is­Utf­8(i­nput)
限制 Buffer 对象在 调试输出等 时显示的最大字节数
buffer.IN­SPE­CT_­MAX­_BYTES
Buffer 对象的最大长度
buffer.kM­axL­ength
Buffer 对象的最大长度
buffer.co­nst­ant­s.M­AX_­LENGTH
字符串的最大长度
buffer.kS­tri­ngM­axL­ength
字符串的最大长度
buffer.co­nst­ant­s.M­AX_­STR­ING­_LENGTH
将二进制数据­从一个­字符编­码转换­为另一­个字符编码
buffer.tr­ans­cod­e(s­ource, fromEnc, toEnc)