深入理解Node内建模块和对象
在 node
核心中有些内建模块,使用这些模块可以操作系统,文件和网络。打开 nodejs.org
官网可以看到文档中对应版本的 API
,推荐使用稳定版。
当然也不全是模块,比如 console
、 buffer
是对象,这里简单的讲下一些常用的内建模块。
比如有操作文件系统的 filename
、可以创建监听 HTTP
请求的网络服务的 HTTP
、还有操作系统的 OS
模块、还有 path
,操作路径、 process
可以返回我们现在正在处理的信息、 QueryString
用来创建 http
服务的时候非常有用。 stream
可以用来操作数据流,后面需要的时候也可以学到其它的一些模块。
首先我们先来看看 path
模块,在文档中可以看到这个模块所有的函数。
往下拉也可以看到针对模块的使用作出的说明。
回到编辑器,引入 path
模块
这就是 path
对象,有很多有用的属性,比如 root
根目录路径, dir
应用的文件夹路径, base
应用的名称, ext
文件的后缀名, name
除去后缀名的应用名。可以很容易的得到相关的字符串。
关于如何使用 OS
模块获取当前操作系统的信息。在文档中可以看到这个模块所有的函数。
比如 freemem
,会返回当前可用的内存有多少。 totalmem
返回总内存的大小。 uptime
获取开机时间等等。
在 node
之前,用 JavaScript
是得不到这些信息的, JavaScript
被设计为只能操作 window
或者 document
对象,而不能获取操作系统的信息。
fs
模块是我们之后用到的非常多的一个,官方的文档中列出了很多的操作文件和路径的方法。
这里列举一个例子看看如何在 node
中操作,其余的按照文章的方法一一尝试学习就好。这里需要注意的是在实际编程环境里, fs
对象里有很多的同步或者阻塞的方式,和异步或者非阻塞的方法。尽量避免使用同步方法,使用异步方法。因为 node
是单线程的,同步的方法过多,会造成阻塞,从而无法服务众多客户端。
这里以同步方法是为了方便理解。
我们得到了一个字符串数组,是这个文件夹中的文件。 好了,我们尝试再使用异步的方法看看,第一个参数是路径,第二个参数是回调函数, node
会在异步操作完成后自动执行函数。
得到的结果和同步是一样的,那如果我更改下路径会发生什么的?
提示没有这样的文件或是目录。
所以在 node
中,能不用同步方法就不用,而是用异步。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
- node使用promise替代回调函数
- async/await与promise(nodejs中的异步操作问题)
- NodeJS的Promise的用法解析
- NodeJS中利用Promise来封装异步函数
- nodejs中简单实现Javascript Promise机制的实例
- node.js中使用q.js实现api的promise化
- 基于promise.js实现nodejs的promises库
- Nodejs学习笔记之Global Objects全局对象
- 用nodejs访问ActiveX对象,以操作Access数据库为例。
- 详解nodeJS之二进制buffer对象
- Node.js 基础教程之全局对象
- node.js Promise对象的使用方法实例分析
相关文章
在Node.js下运用MQTT协议实现即时通讯及离线推送的方法
这篇文章主要介绍了在Node.js下运用MQTT协议实现即时通讯及离线推送的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-01-01
最新评论