Apakah NodeJS?
-
Definisi: NodeJS ialah persekitaran masa jalan JavaScript merentas platform sumber terbuka yang membolehkan anda melaksanakan kod JavaScript di luar pelayar web.
-
Tujuan: Ia digunakan terutamanya untuk skrip sebelah pelayan, di mana JavaScript digunakan untuk menghasilkan kandungan web dinamik sebelum halaman dihantar ke penyemak imbas web pengguna.
-
Ciri Utama:
-
Seni Bina Didorong Peristiwa: NodeJS menggunakan model I/O yang dipacu peristiwa dan tidak menyekat, menjadikannya cekap dan ringan.
-
Berbenang Tunggal: Walaupun berbenang tunggal, NodeJS mengendalikan operasi serentak menggunakan sifat tak segeraknya dan gelung peristiwa.
-
Dibina pada V8: NodeJS dibina pada enjin JavaScript V8 Google Chrome, menjadikannya sangat pantas dalam melaksanakan kod JavaScript.
Bagaimanakah NodeJS Berfungsi di Latar Belakang?
Contoh:
const fs = require('fs');
console.log("Start");
// Reading a file asynchronously
fs.readFile('example.txt', 'utf8', (err, data) => {
if (err) throw err;
console.log(data);
});
console.log("End");
Salin selepas log masuk
Output:
Start
End
(contents of example.txt)
Salin selepas log masuk
Penjelasan:
- NodeJS terus melaksanakan kod selepas fungsi fs.readFile() dipanggil, tanpa menunggu fail dibaca. Ini menunjukkan model I/O tidak menyekatnya.
Apakah Modul dalam NodeJS?
-
Definisi: Modul ialah blok kod terkapsul yang berkomunikasi dengan aplikasi luaran berdasarkan kefungsian berkaitannya.
-
Jenis Modul:
-
Modul Teras: Dibina dalam NodeJS (cth., fs, http, laluan, dll.).
-
Modul Tempatan: Dicipta oleh pengguna untuk menyusun dan menyusun kod.
-
Modul Pihak Ketiga: Dipasang melalui npm (cth., ekspres, lodash).
Cara Mengimport dan Mengeksport Modul dalam JavaScript dan NodeJS
Dalam JavaScript (Modul ES6):
// Named export
export const add = (a, b) => a + b;
// Default export
export default function subtract(a, b) {
return a - b;
}
Salin selepas log masuk
// Named import
import { add } from './math.js';
// Default import
import subtract from './math.js';
Salin selepas log masuk
Dalam NodeJS (Modul CommonJS):
// Using module.exports
module.exports.add = (a, b) => a + b;
// Using exports shorthand
exports.subtract = (a, b) => a - b;
Salin selepas log masuk
// Importing modules
const math = require('./math.js');
const add = math.add;
const subtract = math.subtract;
Salin selepas log masuk
Apakah Pengendalian Fail dalam NodeJS?
-
Definisi: Pengendalian fail dalam NodeJS membolehkan anda bekerja dengan sistem fail pada mesin anda, termasuk membaca, menulis, mengemas kini dan memadam fail.
Fungsi Penting:
-
Beberapa Fungsi Modul fs yang paling penting:
-
fs.readFile(): Membaca kandungan fail secara tak segerak.
-
fs.writeFile(): Menulis data secara tak segerak pada fail, menggantikan fail jika ia sudah wujud.
-
fs.appendFile(): Menambah data pada fail. Jika fail itu tidak wujud, ia mencipta fail baharu.
-
fs.unlink(): Memadamkan fail.
-
fs.rename(): Menamakan semula fail.
Contoh:
const fs = require('fs');
// Writing to a file
fs.writeFile('example.txt', 'Hello, NodeJS!', (err) => {
if (err) throw err;
console.log('File written successfully.');
// Reading the file
fs.readFile('example.txt', 'utf8', (err, data) => {
if (err) throw err;
console.log('File contents:', data);
// Appending to the file
fs.appendFile('example.txt', ' This is an appended text.', (err) => {
if (err) throw err;
console.log('File appended successfully.');
// Renaming the file
fs.rename('example.txt', 'newExample.txt', (err) => {
if (err) throw err;
console.log('File renamed successfully.');
// Deleting the file
fs.unlink('newExample.txt', (err) => {
if (err) throw err;
console.log('File deleted successfully.');
});
});
});
});
});
Salin selepas log masuk
Output:
File written successfully.
File contents: Hello, NodeJS!
File appended successfully.
File renamed successfully.
File deleted successfully.
Salin selepas log masuk
Bagaimana untuk Membina Pelayan dalam NodeJS?
-
Menggunakan Modul http: Modul http ialah modul teras dalam NodeJS yang membolehkan anda mencipta pelayan yang mendengar permintaan pada port tertentu dan menghantar respons.
Contoh:
const http = require('http');
// Creating a server
const server = http.createServer((req, res) => {
res.statusCode = 200;
res.setHeader('Content-Type', 'text/plain');
res.end('Hello, World!\n');
});
// Listening on port 3000
server.listen(3000, '127.0.0.1', () => {
console.log('Server running at http://127.0.0.1:3000/');
});
Salin selepas log masuk
Output:
Server running at http://127.0.0.1:3000/
Salin selepas log masuk
-
Explanation: The server responds with "Hello, World!" every time it receives a request. The server listens on localhost (127.0.0.1) at port 3000.
What is an HTTP Module?
-
Definition: The http module in NodeJS provides functionalities to create HTTP servers and clients.
Important Functions?
-
Some of the most important functions of HTTP module are:
-
http.createServer(): Creates an HTTP server that listens to requests and sends responses.
-
req.method: Retrieves the request method (GET, POST, etc.).
-
req.url: Retrieves the URL of the request.
-
res.writeHead(): Sets the status code and headers for the response.
-
res.end(): Signals to the server that all of the response headers and body have been sent.
Example:
const http = require('http');
const server = http.createServer((req, res) => {
if (req.url === '/') {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Welcome to the homepage!\n');
} else if (req.url === '/about') {
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Welcome to the about page!\n');
} else {
res.writeHead(404, { 'Content-Type': 'text/plain' });
res.end('404 Not Found\n');
}
});
server.listen(3000, '127.0.0.1', () => {
console.log('Server running at http://127.0.0.1:3000/');
});
Salin selepas log masuk
Output:
- If you navigate to http://127.0.0.1:3000/, the server will display "Welcome to the homepage!".
- If you navigate to http://127.0.0.1:3000/about, the server will display "Welcome to the about page!".
- If you navigate to any other URL, the server will display "404 Not Found".
Atas ialah kandungan terperinci Bermula dengan Node JS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!