咱們知道node裏面有兩種類型模塊:一個是核心模塊(系統模塊)、一個是文件模塊(自定義模塊或第三方模塊)下面簡單說說node裏面那些核心模塊。html
1、核心模塊與文件模塊的區別node
核心模塊由Node.js平臺提供的模塊,也稱系統模塊。api
核心模塊導入規則:不以雙點(..)或點(.) 和斜杆(/)開始的標識符。數組
var fs=require("fs")
文件模塊:導入規則以雙點(..)或點(.) 和斜杆(/)開始的標識符服務器
var hi =require("./hi")
注:一般咱們導入的模塊會存放在node_modules文件夾裏。socket
2、os(操做系統)核心模塊函數
os
模塊提供了操做系統相關的使用方法工具
詳細的NodeJs官方os模塊方法中文文檔地址:http://nodejs.cn/api/os.html,這裏我只是簡單說說ui
os.jsthis
const os=require('os'); //os.hostname() 方法以字符串的形式返回操做系統的主機名。 console.log('主機名'+os.hostname()); //os.cpus() 方法返回一個對象數組,包含每一個邏輯 CPU 內核的信息。 console.log('本機CPU'+os.cpus()); //os.platform() 方法返回一個字符串,指定 Node.js 編譯時的操做系統平臺。 console.log('本機操做系統平臺'+os.platform()); //os.type() 方法返回一個字符串, 返回的操做系統的名字。 console.log('本機操做系統:'+os.type())
運行:
三:path(路徑)核心模塊
path
模塊提供用於處理文件路徑和目錄路徑的實用工具。
詳細的NodeJs官方path模塊方法中文文檔地址:http://nodejs.cn/api/path.html
path.js
const path=require('path'); var testData='E:/travel/index.html'; //path.basename() 方法返回 path 的最後一部分, console.log(path.basename(testData)); //path.dirname() 方法返回 path 的目錄名,即除去最後一部分的全部路徑 console.log(path.dirname(testData)); //path.extname() 方法返回 path 的擴展名,從最後一次出現 .(句點)字符到 path 最後一部分的字符串結束。 console.log(path.extname(testData));
運行
4、URL核心模塊
url
模塊用於處理與解析 URL.
詳細的NodeJs官方url模塊方法中文文檔地址:http://nodejs.cn/api/url.html
url.js
const url=require('url'); var data='http://itcat.cn?name=李四&age=22'; console.log('默認第二參數false--',url.parse(data)); console.log('第二參數true--',url.parse(data,true)); console.log('第二參數true--',url.parse(data,true).query);
運行
5、fs(文件操做)核心模塊
fs
模塊提供了一個 API,用於以模仿標準 POSIX 函數的方式與文件系統進行交互。
詳細的NodeJs官方fs模塊方法中文文檔地址:http://nodejs.cn/api/fs.html
關於fs我在以前有簡單應用過,如今在這仍是從新說下
fs.js,寫入數據傳到a.txt
var fs=require('fs'); fs.writeFile('./data/a.txt','祖國七十華誕快樂,大夥國慶快樂',function(err){ if(err){ console.log('寫入失敗'); return; }else{ console.log('寫入成功'); } });
運行
6、http核心模塊
http 模塊提供了一個 API,用於使用 HTTP 服務器和客戶端
詳細的NodeJs官方fs模塊方法中文文檔地址:http://nodejs.cn/api/http.html
http.js
// 1. 加載 http 核心模塊 var http = require('http'); // 2. 使用 http.createServer() 方法建立一個 Web 服務器 // 返回一個 Server 實例 var server = http.createServer(); // 3. 註冊 request 請求事件 // 當客戶端請求過來,就會自動觸發服務器的 request 請求事件,而後執行第二個參數:回調處理函數 server.on('request', function (req,res) { console.log('收到客戶端的請求,請求地址是:'+req.url); console.log('收到客戶端的請求,請求地址頭信息(對象)是:'+req.headers); console.log('收到客戶端的請求,請求地址頭信息(數組)是:'+req.rawHeaders); console.log('收到客戶端的請求,請求地址HTTP版本是:'+req.httpVersion); console.log('收到客戶端的請求,請求方法是:'+req.method); console.log('請求個人客戶端的地址是:', req.socket.remoteAddress, req.socket.remotePort) //發送響應內容(res),res.setHeader()解決響應數據亂碼 res.setHeader('Content-Type','text/html; charset=utf-8'); //根據url不一樣響應不一樣數據 var url=req.url; if(url==='/'){ res.end("百度一下,你就知道,<a href='http://www.baidu.com'>百度</a>"); }else if(url==='/login'){ res.end('this is login pages') }else if (url === '/products') { var products = [{ name: '蘋果 X', price: 8888 }, { name: '菠蘿 X', price: 5000 }, { name: '小辣椒 X', price: 1999 } ] //注:響應內容只能是二進制數據或者字符串 //因此對數字、對象、數組、布爾值等需進行轉化。 res.end(JSON.stringify(products)) } else { //res.end()結束響應數據發送 res.end('404 Not Found.') } }) // 4. 綁定端口號,啓動服務器 server.listen(3000, function () { console.log('服務器啓動成功了,能夠經過 http://127.0.0.1:3000/ 來進行訪問'); })
運行,並登錄網址
效果圖就不展現了哈
另外,nodejs裏面核心模塊不止這樣,至於其餘的你們能夠去NodejsAPI文檔官網查看:http://nodejs.cn/api/