借鉴:https://www.jianshu.com/p/c36666b306aa
Node.js是什么
node.js就是一个服务器
Node.js 安装
参见https://www.runoob.com/nodejs/nodejs-http-server.html
node.js组成
- 引入 required 模块:我们可以使用 require 指令来载入 Node.js 模块。
- 创建服务器:服务器可以监听客户端的请求,类似于 Apache 、Nginx 等 HTTP 服务器。
- 接收请求与响应请求 服务器很容易创建,客户端可以使用浏览器或终端发送 HTTP 请求,服务器接收请求后返回响应数据。
npm是啥
npm,全称【node package management】,是nodejs内置的软件包管理器。毫无疑问,npm是用来管理软件包的。
nmp由三部分组成:
- 网站:开发者查找包(package)、设置参数以及管理 npm 使用体验的主要途径,网址为:https://www.npmjs.com/
- 注册表:是一个巨大的数据库,保存了每个包的基本信息。
- 命令行工具:开发者与npm包打交道的工具。
参考:https://www.runoob.com/nodejs/nodejs-npm.html
下载资源:
npm i xxx
写一个Node.js应用
创建一个xx.js文件
var http = require('http');
http.createServer(function (request, response) {
// 发送 HTTP 头部
// HTTP 状态值: 200 : OK
// 内容类型: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// 发送响应数据 "Hello World"
response.end('Hello World\n');
}).listen(8888);
// 终端打印如下信息
console.log('Server running at http://127.0.0.1:8888/');
在cmd下或linux终端下输入:node xx.js
Node.js回调函数
不回调:阻塞等待执行完毕
var fs = require("fs");
var data = fs.readFileSync('input.txt');
console.log(data.toString());
console.log("程序执行结束!");
回调:非阻塞
var fs = require("fs");
fs.readFile('input.txt', function (err, data) {
if (err) return console.error(err);
console.log(data.toString());
});
console.log("程序执行结束!");