简单介绍下NodeJS现有API。

  1. Assert(断言):该模块用于编写程序的单元测试用例。
  2. Buffer(缓冲块) :处理二进制数据。
  3. C/C++ Addons(拓展):Addons插件就是动态连接库。
  4. Child Processes(子进程):提供了类似 popen(3) 的处理三向数据流(stdin/stdout/stderr)的功能。
  5. Cluster(集群):用于nodejs多核处理,简化多进程并行化程序的开发,轻松构建一个用于负载均衡的集群。
  6. Console(控制台):类似于大部分 Web 浏览器提供的 console 对象函数。
  7. Crypto(加密):crypto模块提供在HTTPS或HTTP连接中封装安全凭证的方法。
  8. Debugger(调试器):V8 提供了一个强大的调试器,可以通过 TCP 协议从外部访问。Node 内建了这个调试器的客户端。要使用调试器,以 debug 参数启动 Node。
  9. DNS(域名系统):模块主要负责解析当前DNS域名,返回DNS服务器IP地址。
  10. Domain():Domains 提供了一种方式,即以一个单一的组的形式来处理多个不同的IO操作。
  11. Errors(异常):通过Node.js的产生的错误有两类:JavaScript错误和系统错误。
  12. Events(事件):Node里面的许多对象都会分发事件。
  13. File System (文件系统): 文件系统模块是一个简单包装的标准 POSIX 文件 I/O 操作方法集。
  14. Globals(全局对象):这些对象在所有模块中都是可用的。
  15. HTTP:提供HTTP服务器或客户端功能。
  16. HTTPS:建立在 TLS/SSL 之上的 HTTP 协议。
  17. Modules(模块):文件和模块是一一对应的。
  18. Net(网络):可用于创建Socket服务器或Socket客户端。
  19. OS(操作系统):提供一些基本的操作系统相关函数。
  20. Path(路径):一套用于处理和转换文件路径的工具集。
  21. Process(进程):process对象是一个全局对象,可以在任何地方访问到它。 它是EventEmitter的一个实例。
  22. Punycode(编码系统):把域名从地方语言所采用的Unicode编码转换成为可用於DNS系统的编码。
  23. Query Strings(查询字符串):提供一些处理 query string 的工具。
  24. Readline(逐行读取):逐行读取一个流内容(例如process.stdin)。
  25. REPL(命令行交互):REPL 提供了一种交互地执行 JavaScript 并查看输出的方式。它可以被用作调试、测试或仅仅尝试某些东西。
  26. Stream():流是一个抽象接口,被 Node 中的很多对象所实现。比如对一个 HTTP 服务器的请求是一个流,stdout 也是一个流。流是可读、可写或兼具两者的。所有流都是 EventEmitter 的实例。
  27. String Decoder(字符串解码):这个模块将一个 Buffer 解码成一个字符串。
  28. Timers(定时器):所有的定时器函数都是全局变量. 你使用这些函数时不需要 require。
  29. TLS/SSL:tls 模块使用 OpenSSL 来提供传输层安全协议(Transport Layer Security)和/或安全套接层(Secure Socket Layer):加密过的流通讯。TLS/SSL 是一种公钥/私钥架构。每个客户端和服务器都必有一个私钥。
  30. TTY(终端):提供了 tty.ReadStream 和 tty.WriteStream 类。
  31. UDP/Datagram(数据报):提供UDP数据报套接字接口。
  32. URL(链接):该模块包含用以 URL 解析的实用函数。
  33. Util(实用函数):提供一些工具方法。
  34. V8(V8引擎):暴露V8的事件和接口。
  35. VM(虚拟机):JavaScript 代码可以被编译并立即执行,也可以在编译后保存,留到稍后执行。
  36. ZLIB(压缩):这个模块提供了对Gzip/Gunzip, Deflate/Inflate和DeflateRaw/InflateRaw类的绑定。