(創(chuàng)作不易,感謝有你,你的支持,就是我前行的最大動(dòng)力,如果看完對(duì)你有幫助,請(qǐng)留下您的足跡)
目錄
Node.js 入門(mén)?
什么是 Node.js?
什么是前端工程化? ?
Node.js 為何能執(zhí)行 JS??
fs 模塊 - 讀寫(xiě)文件?
path 模塊 - 路徑處理
URL 中的端口號(hào)?
常見(jiàn)的服務(wù)程序?
Node.js 模塊化
什么是模塊化??
CommonJS 標(biāo)準(zhǔn)?
ECMAScript 標(biāo)準(zhǔn) - 默認(rèn)導(dǎo)出和導(dǎo)入 ?
包的概念 ?
npm - 軟件包管理器?
npm - 全局軟件包 nodemon
Node.js 總結(jié) ?
Node.js 入門(mén)?
什么是 Node.js?
定義:
作用:使用 Node.js 編寫(xiě)服務(wù)器端程序????????編寫(xiě)數(shù)據(jù)接口,提供網(wǎng)頁(yè)資源瀏覽功能等等????????前端工程化 :為后續(xù)學(xué)習(xí) Vue 和 React 等框架做鋪墊
什么是前端工程化? ?
前端工程化:開(kāi)發(fā)項(xiàng)目直到上線,過(guò)程中集成的所有 工具和技術(shù)Node.js 是前端工程化的基礎(chǔ)(因?yàn)?Node.js 可以主動(dòng)讀取前端代碼內(nèi)容)![]()
Node.js 為何能執(zhí)行 JS??
首先:瀏覽器能執(zhí)行 JS 代碼,依靠的是內(nèi)核中的 V8 引擎 (C++ 程序)其次:Node.js 是基于 Chrome V8 引擎進(jìn)行封裝(運(yùn)行環(huán)境)區(qū)別:都支持 ECMAScript 標(biāo)準(zhǔn)語(yǔ)法,Node.js 有獨(dú)立的 API注意: Node.js 環(huán)境沒(méi)有 DOM 和 BOM 等![]()
fs 模塊 - 讀寫(xiě)文件?
fs 模塊:封裝了與本機(jī)文件系統(tǒng)進(jìn)行交互的,方法/屬性語(yǔ)法:1. 加載 fs 模塊對(duì)象2. 寫(xiě)入 文件內(nèi)容3. 讀取 文件內(nèi)容
//1.加載fs模塊對(duì)象
const fs = require('fs')
//2.寫(xiě)入文件內(nèi)容
fs.writeFile('./test.txt','hello world',(err)=>{
if(err){
console.log(err)
}
else{
console.log('寫(xiě)入成功')
}
})
//3.讀取文件內(nèi)容
fs.readFile('./test.txt',(err,data)=>{
if(err){
console.log(err)
}
else{
console.log(data.toString())
}
})
?終端顯示為:? ? ? ? ? ? ? ? ? ? ? ??
path 模塊 - 路徑處理
建議:在 Node.js 代碼中,使用 絕對(duì)路徑補(bǔ)充: __dirname 內(nèi)置變量(獲取當(dāng)前模塊目錄-絕對(duì)路徑)注意: path.join() 會(huì)使用特定于平臺(tái)的分隔符,作為定界符,將所有給定的路徑片段連接在一起語(yǔ)法:1. 加載 path 模塊2. 使用 path.join 方法,拼接路徑
URL 中的端口號(hào)?
URL: 統(tǒng)一資源定位符,簡(jiǎn)稱網(wǎng)址,用于訪問(wèn)服務(wù)器里的資源端口號(hào):標(biāo)記服務(wù)器里不同功能的 服務(wù)程序端口號(hào)范圍:0-65535 之間的任意整數(shù)注意:http 協(xié)議, 默認(rèn) 訪問(wèn) 80 端口![]()
常見(jiàn)的服務(wù)程序?
Web 服務(wù)程序 :用于提供網(wǎng)上信息瀏覽功能注意:0-1023 和一些特定端口號(hào)被占用,我們自己編寫(xiě)服務(wù)程序請(qǐng)避開(kāi)使用![]()
Node.js 模塊化
什么是模塊化??
定義:
概念:項(xiàng)目是由很多個(gè)模塊文件組成的好處:提高代碼復(fù)用性,按需加載, 獨(dú)立作用域使用:需要標(biāo)準(zhǔn)語(yǔ)法 導(dǎo)出 和 導(dǎo)入 進(jìn)行使用
CommonJS 標(biāo)準(zhǔn)?
使用:1. 導(dǎo)出:module.exports = {}2. 導(dǎo)入:require('模塊名或路徑')![]()
ECMAScript 標(biāo)準(zhǔn) - 默認(rèn)導(dǎo)出和導(dǎo)入 ?
默認(rèn)標(biāo)準(zhǔn)使用:1. 導(dǎo)出: export default {}2. 導(dǎo)入: import 變量名 from '模塊名或路徑'注意: Node.js 默認(rèn)支持 CommonJS 標(biāo)準(zhǔn)語(yǔ)法如需使用 ECMAScript 標(biāo)準(zhǔn)語(yǔ)法,在運(yùn)行模塊所在文件夾新建 package.json 文件,并設(shè)置{ "type" : "module" }![]()
包的概念 ?
包:將模塊,代碼,其他資料聚合成一個(gè)文件夾
包分類:???????? 項(xiàng)目包:主要用于編寫(xiě)項(xiàng)目和業(yè)務(wù)邏輯???????? 軟件包: 封裝工具和方法 進(jìn)行使用要求:根目錄中,必須有 package.json 文件(記錄包的清單信息)注意:導(dǎo)入軟件包時(shí),引入的默認(rèn)是 index.js 模塊文件 / main 屬性指定的模塊文件
npm - 軟件包管理器?
定義:
使用:1. 初始化清單文件 :npm init -y(得到 package.json 文件,有則略過(guò)此命令)2. 下載軟件包: npm i 軟件包名稱3. 使用軟件包
npm - 全局軟件包 nodemon
軟件包區(qū)別:? 本地軟件包: 當(dāng)前項(xiàng)目 內(nèi)使用,封裝 屬性和方法 ,存在于 node_modules? 全局軟件包: 本機(jī) 所有項(xiàng)目使用,封裝 命令和工具 ,存在于系統(tǒng)設(shè)置的位置nodemon 作用:替代 node 命令,檢測(cè)代碼更改,自動(dòng)重啟程序使用:1. 安裝:npm i nodemon -g(-g 代表安裝到全局環(huán)境中)2. 運(yùn)行:nodemon 待執(zhí)行的目標(biāo) js 文件
Node.js 總結(jié) ?
Node.js 模塊化:概念:每個(gè)文件當(dāng)做一個(gè)模塊,獨(dú)立作用域,按需加載使用:采用特定的標(biāo)準(zhǔn)語(yǔ)法導(dǎo)出和導(dǎo)入進(jìn)行使用![]()
CommonJS 標(biāo)準(zhǔn):一般應(yīng)用在 Node.js 項(xiàng)目環(huán)境中ECMAScript 標(biāo)準(zhǔn):一般應(yīng)用在前端工程化項(xiàng)目中
Node.js 包:概念:把模塊文件,代碼文件,其他資料聚合成一個(gè)文件夾項(xiàng)目包:編寫(xiě)項(xiàng)目需求和 業(yè)務(wù)邏輯 的文件夾軟件包: 封裝工具和方法 進(jìn)行使用的文件夾(一般使用 npm 管理)? 本地軟件包:作用在 當(dāng)前 項(xiàng)目,一般封裝的 屬性/方法 ,供項(xiàng)目調(diào)用編寫(xiě)業(yè)務(wù)需求? 全局軟件包:作用在 所有 項(xiàng)目,一般封裝的 命令/工具 ,支撐項(xiàng)目運(yùn)行![]()
常用命令: ?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-585460.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-585460.html
到了這里,關(guān)于前端node.js入門(mén)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!