Node.js知识点总结
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,它提供了一种简单的方法来构建快速的、可扩展的网络应用。以下是一些 Node.js 的常见知识点和使用示例:
- HTTP服务器创建
const http = require('http');
const server = http.createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
});
const port = 3000;
server.listen(port, () => {
console.log(`Server running at http://localhost:${port}/`);
});
- 事件驱动编程
const EventEmitter = require('events');
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();
myEmitter.on('event', () => {
console.log('事件触发');
});
myEmitter.emit('event');
- 使用 npm 管理包依赖
// 安装 express 包
npm install express
// 在代码中引入 express
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.listen(3000, () => {
console.log('服务器运行在 http://localhost:3000/');
});
- 异步编程(使用 Promises/async/await)
const fs = require('fs');
const readFileAsync = filename => {
return new Promise((resolve, reject) => {
fs.readFile(filename, 'utf8', (err, data) => {
if (err) reject(err);
resolve(data);
});
});
};
(async () => {
try {
const data = await readFileAsync('example.txt');
console.log(data);
} catch (err) {
console.error(err);
}
})();
- 使用 Node.js 操作数据库
const mysql = require('mysql');
const connection = mysql.createConnection({
host : 'localhost',
user : 'me',
password : 'secret',
database : 'my_db'
});
connection.connect();
connection.query('SELECT * FROM customers', (err, results, fields) => {
if (err) throw err;
console.log(results);
});
connection.end();
这些代码示例展示了 Node.js 的基础知识点,涵盖了 HTTP 服务器创建、事件驱动编程、npm 包管理、异步编程和数据库操作等常用场景。
评论已关闭