Node.js
- Node.js 就是运行在本地或服务端的 JavaScript。
- Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。
- Node.js 是一个事件驱动 I/O 服务端 JavaScript 环境,基于 Google 的 V8 引擎,V8 引擎执行 Javascript 的速度非常快,性能非常好。
安装
安装包地址:https://nodejs.org/en/download/
用以下命令检查使用版本,也可以检查是否安装成功。
$ node -v
//v10.15.3,版本信息
NPM
npm 是和 node.js 一起安装的包管理工具。
用以下命令检查使用版本,也可以检查是否安装成功。
$ npm -v
//6.4.1,版本信息
使用:
- 从 npm 服务器下载别人编写的第三方包到本地使用。
- 从 npm 服务器下载并安装别人编写的命令行程序到本地使用。
- 也可以将自己编写的包或命令行程序上传到 npm 服务器给别人使用。
npm 命令
- 使用 npm 命令安装 node.js 模块
//本地安装
$ npm install <Module Name>
//全局安装
$ npm install <Module Name> -g
使用 node.js 创建应用
//引入模块
var 变量 = require('模块');
//调用模块方法
使用 node 命令执行代码:
$ node 文件名
模块的值:
- Node.js 自带的模块名
- 或者文件路径,
./
为当前目录,node.js 默认后缀为 js
模块:模块是 Node.js 应用程序的基本组成部分,文件和模块是一一对应的。也就是说,一个 Node.js 文件就是一个模块。
变量:把引入模块赋值给当前文件变量(本地变量)时,变量就变成了一个拥有引入模块所提供的所有公共方法的对象。
应用实例
1.新建一个项目文件夹
2.在项目文件夹下新建一个address.text文件,内容如下:
博客地址:https://www.jianshu.com/u/b7dcd4e5169e
3.在项目文件夹下新建一个 address.js 文件
//引入fs(文件系统)
var fs = require('fs');
//调用fs模块方法读取address.text文件
var address = fs.readFileSync('address.text');
console.log(address.toString());
console.log('已获取到相关地址!');
//博客地址:https://www.jianshu.com/u/b7dcd4e5169e
//已获取到相关地址!
Node.js 原理
Node.js EventEmitter 事件触发
Node.js 所有的异步 I/O 操作在完成时都会发送一个事件到事件队列。
var EventEmitter = require('events').EventEmitter;
var event = new EventEmitter(); //单例模式
event.on('some_event', function() {
console.log('some_event 事件触发');
});
setTimeout(function() {
event.emit('some_event');
}, 1000);
Node.js自带的模块
中文文档
http
fs
参考:
https://www.runoob.com/nodejs
http://nodejs.cn/api/
https://nodejs.org/api/index.html