2018-11-26
白駒過隙,我們又開啟了一門優(yōu)秀而神圣的課程==>Node.js
所以呢,距離我們畢業(yè)的時光也在慢慢消逝,因此,沒有那么多為什么需要我們?nèi)チ骼肆恕?/h6>
·Node.js·
nodejs.jpg
①簡單的說 Node.js 就是運行在服務(wù)端的 JavaScript。

nodejs.jpg
(Node.js 是一個基于Chrome JavaScript 運行時建立的一個平臺。)
②要檢查本電腦是否安裝Node.js。
我們可以在window+R(運行)里,輸入cmd會進入管理員頁面(如下圖)

管理員.png
之后,再輸入
node -v
回車,出現(xiàn)當(dāng)前版本號,測試是否安裝Node,js。
③打開node文件的三個命令。
執(zhí)行完②后,我們就要知道如何打開一個node.js文件。一共分為三步:
1.切換盤符(也就是從其他盤進入你當(dāng)前創(chuàng)建Node文件夾的盤)
eg:(假如當(dāng)前Node.js在E盤),則需要輸入
e: //可以不區(qū)分大小寫
如下圖所示:

進入E盤.png
2.進入文件夾eg:
cd 文件夾名稱
如下圖所示:

進入我的文件夾.png
3.執(zhí)行某文件同理輸入:
node 文件名
知道了這三個命令后我們在舉個例子:
eg:
// 獲取當(dāng)前日期
var today=new Date();
console.log(today.getFullYear()); //當(dāng)前年份
console.log(today.getMonth()+1); //當(dāng)前月份
console.log(today.getDate()); //當(dāng)前日期
console.log(today.getHours()); //當(dāng)前小時
console.log(today.getMinutes()); //當(dāng)前分鐘
console.log(today.getSeconds()); //當(dāng)前秒數(shù)
QAQ:js中月份是從0開始的,所以要給輸出的月份加一。
④Node.js中的模塊。
1.http創(chuàng)建服務(wù)器
eg:1.server.js文件
//創(chuàng)建一個簡單的服務(wù)器
//1.引入http模塊
var http=require('http');
//2.使用http模塊創(chuàng)建一個服務(wù)
var server=http.createServer(function(){
console.log('服務(wù)器開啟了');
})
//監(jiān)聽一個端口號
server.listen(8080);
接下來在瀏覽器中輸入127.0.0.1:8080/localhost:8080來開啟一個服務(wù)。
QAQ:在服務(wù)器中的console.log()他的輸出位置就在window+R里顯示,并非在我們之前瀏覽器的Consloe(控制臺)中輸出。
QAQ:端口號是任意的,并非上述的8080。
eg:2.server1.js中(多了請求與響應(yīng))
//創(chuàng)建一個簡單的服務(wù)器
//1.引入http模塊
var http=require('http');
//2.使用http模塊創(chuàng)建一個服務(wù)
var server=http.createServer(function(req,res){//請求 響應(yīng)
console.log('服務(wù)器開啟了');
//響應(yīng)2個方法
res.write('succ');//響應(yīng)的內(nèi)容
res.end();//響應(yīng)結(jié)束
})
//監(jiān)聽一個端口號
server.listen(8080);
eg:3.server2.js中(增加判斷條件)
//創(chuàng)建一個簡單的服務(wù)器
//1.引入http模塊
var http=require('http');
//2.使用http模塊創(chuàng)建一個服務(wù)
var server=http.createServer(function(req,res){//請求 響應(yīng)
console.log('服務(wù)器開啟了');
// 解決亂碼
resonse.setHeader('Content-Type','text/html;charset=UTF-8');
//請求不同的地址,響應(yīng)不同的內(nèi)容
//獲取請求的路徑 req.url
if(req.url=='/1.html'){
res.write('11111111一')
}else if(req.url=='/2.html'){
res.write('2222222222二')
}else{
res.write('404');
}
//響應(yīng)2個方法
// res.write('succ');//響應(yīng)的內(nèi)容
res.end();//響應(yīng)結(jié)束
})
//監(jiān)聽一個端口號
server.listen(8080);
QAQ:其中if···else···可用switch代替。如下:
//創(chuàng)建一個簡單的服務(wù)器
//1.引入http模塊
var http=require('http');
//2.使用http模塊創(chuàng)建一個服務(wù)
var server=http.createServer(function(req,res){//請求 響應(yīng)
console.log('服務(wù)器開啟了');
//請求不同的地址,響應(yīng)不同的內(nèi)容
//獲取請求的路徑 req.url
// if(req.url=='/1.html'){
// res.write('11111111')
// }else if(req.url=='/2.html'){
// res.write('2222222222')
// }else{
// res.write('404');
// }
switch(req.url){
case '/1.html':
res.write('1111111');
break;
case '/2.html':
res.write('2222222');
break;
default:
res.write('404');
}
//響應(yīng)2個方法
// res.write('succ');//響應(yīng)的內(nèi)容
res.end();//響應(yīng)結(jié)束
})
//監(jiān)聽一個端口號
server.listen(8080);
2.fs模塊(文件模塊==>可以讀取文件或文件)
①新建fs.js文檔
// 讀取文件
//1.引入fs模塊
var fs=require('fs');
//2.讀取文件
fs.readFile('aaa.txt',function(err,data){//err讀取失敗 data表示文件中的內(nèi)容
console.log(err);//沒有錯輸出null 有錯報錯
if(err){
console.log('讀取失敗');
}else{
// console.log(data);// 輸出二進制數(shù)據(jù)
console.log(data.toString()); //這一步是將二進制轉(zhuǎn)換成我們認(rèn)識的數(shù)據(jù)
}
})
②新建write_file.js文件
// 寫文件 fs模塊
var fs=require('fs');
// fs.writeFile('文件名','內(nèi)容',function(){})
fs.writeFile('bbb.txt','mei you xing xing de ye li',function(err){
console.log(err);
})