Node.js学习手册:基本操作指南
发表时间: 2020-08-28 17:02
由于 Node.js 只是 JavaScript 程序的运行时环境,所以它并不会限制 JavaScript 代码的具体运行形式。为了说明这一点,本示例将使用四种形式来跟大家说"Hello"。首先,我们要在code目录下执行mkdir 01_sayHello命令来创建用于存放这一组示例的目录。
在终端输出信息需要调用console.log()方法,下面来创建第一个 Node.js 脚本,步骤如下:
用 Node.js 脚本读文本文件需要调用fs.readFile()方法,具体步骤如下:
const fs = require('fs') fs.readFile('./data/text-data.txt', function(err, data) { if (err !== null ) { return console.error('错误信息:' + err.message) } console.log(data.toString()) })
用 Node.js 脚本写文本文件需要调用fs.writeFile()方法,具体步骤如下:
const fs = require('fs') const str = '你好,Nodejs!' fs.writeFile('./data/output.txt', str, function(err) { if (err !== null ) { return console.error('错误信息:' + err.message) } console.log("文件写入成功!") })
用 Node.js 脚本创建 Web 服务需要用到http模块,具体步骤如下:
const http = require('http') const server = http.createServer() server.on('request', function(req, res){ res.end('<h1>你好,Nodejs!</h1>') }) server.listen(8080, function(){ console.log('请访问http://localhost:8080/,按Ctrl+C终止服务!') })
用 Node.js 构建 TCP 服务需要用到net模块,具体步骤如下:
const net = require('net') const server = net.createServer(function (socket) { console.log('连接来自' + socket.remoteAddress) socket.end('你好,Nodejs!\n') }) server.listen(7000, 'localhost', function(){ console.log('TCP服务器监听 localhost 的 7000 端口,按 Ctrl+C 终止服务!') })
本示例将致力于演示 Node.js 的自定义模块语法以及部分 ES6 新增的语法。首先,我们要在code目录下执行mkdir 02_useModule命令来创建这一组示例的目录。
class singleFile_module { constructor() { this.name = 'singleFile_module' } sayhello() { console.log('Hello', this.name) } } module.exports = singleFile_module
const es5_syntax = require('./02-singleFile') const testobj = new singleFile_module() testobj.sayhello()
function add(x,y){ return x + y } exports.add = add
const name = 'multFile_module' exports.name = name
const func = require('./functions') const str = require('./dataObj') class multiFile_module { constructor() { this.func = func.add this.name = str.name } sayhello() { console.log('Hello', this.name) console.log('x + y = ', this.func(10,5)) } } module.exports = multiFile_module
const singleFile_module = require(`./02-singleFile`) const testobj = new singleFile_module() testobj.sayhello() const multiFile_module = require(`./02-multiFile`) const testobj2 = new multiFile_module() testobj2.sayhello()