柚子快報邀請碼778899分享:Node.js常用知識點總結(jié)
柚子快報邀請碼778899分享:Node.js常用知識點總結(jié)
1.什么是node.js
js之所以可以在瀏覽器中使用,是因為不同瀏覽器自帶著不同的javascript解析引擎,可以對js代碼進行解析并執(zhí)行
瀏覽器中的 JavaScript 運行環(huán)境(運行環(huán)境指的是代碼正常運行所需的必要環(huán)境) 以谷歌瀏覽器為例,js的運行環(huán)境就是由v8解析引擎和一些內(nèi)置的web API所組成;
總結(jié): V8 引擎負責解析和執(zhí)行 JavaScript 代碼。 內(nèi)置 API 是由運行環(huán)境提供的特殊接口,只能在所屬的運行環(huán)境中被調(diào)用。
Node.js是一個屬于后端的運行環(huán)境,通過node可以使js進行后端的開發(fā)
Node.js 是一個基于 Chrome V8 引擎的 JavaScript 運行環(huán)境。屬于后端的一個運行環(huán)境
終端的一些快捷指令
2.fs文件系統(tǒng)模塊
導入模塊有兩種方法,import和require都可以
_ _dirname表示當前文件所處的目錄(打開終端的默認路徑名),可以有效的防止路徑動態(tài)拼接的問題
3.path 路徑模塊
只有…/才有抵消路徑的功能,會抵消前面的路徑,./是沒有的也不會
路徑的最后的一部分一般返回的是文件名
http模塊
服務(wù)器和普通電腦的區(qū)別在于,服務(wù)器上安裝了 web 服務(wù)器軟件,例如:IIS、Apache 等。通過安裝這些服務(wù)器軟件,就能把一臺普通的電腦變成一臺 web 服務(wù)器。在 Node.js 中,我們不需要使用 IIS、Apache 等這些第三方 web 服務(wù)器軟件。因為我們可以基于 Node.js 提供的http 模塊,通過幾行簡單的代碼,就能輕松的手寫一個服務(wù)器軟件,從而對外提供 web服務(wù)。
node.js是相當于用前端的語法寫后端,因為js的語法跟java的類似 如果端口號是80,則可以省略不寫(注意:是80端口號,不是8080)
req請求對象中儲存的是與客戶端有關(guān)的數(shù)據(jù)和屬性
res響應(yīng)對象中儲存的是與服務(wù)器相關(guān)的屬性和方法,可以向客戶端響應(yīng)指定內(nèi)容
注意:setHeader()函數(shù)必須要在end()之前調(diào)用
服務(wù)器充當?shù)慕巧褪且粋€字符串的搬運工
模塊化
模塊化是指解決一個復(fù)雜問題時,自頂向下逐層把系統(tǒng)劃分成若干模塊的過程。對于整個系統(tǒng)來說,模塊是可組合、分解和更換的單元。 類似于小時候玩的插卡游戲機,不同游戲的卡片就是模塊,游戲主機就是系統(tǒng)
注意:在使用require加載用戶自定義模塊的時候,可以省略.js的后綴名; 使用 require() 方法加載其它模塊時,會執(zhí)行被加載模塊中的代碼。
好處:防止全局變量的污染
在每個 .js 自定義模塊中都有一個 module 對象,它里面存儲了和當前模塊有關(guān)的信息 導入一個自定義模塊的時候,默認得到的是一個空對象,因為模塊具有作用域 導入自定義事件的時候?qū)嶋H上讀取的是module.export對象,當我們在創(chuàng)建自定義模塊的時候?qū)⑿枰┞冻鋈サ膶傩院头椒ǘ紥燧d到module.export對象上
npm與包
包是基于內(nèi)置模塊封裝出來的,提供了更高級、更方便的 API,極大的提高了開發(fā)效率。 包和內(nèi)置模塊之間的關(guān)系,類似于 jQuery 和 瀏覽器內(nèi)置 API 之間的關(guān)系。
內(nèi)置模塊是由 Node.js 官方提供的模塊,內(nèi)置模塊的加載優(yōu)先級最高
Express
導入之前需要進行依賴安裝
express.static()還可以對外開放訪問我們指定目錄下的html文件
nodemon會監(jiān)聽我們的代碼,當有修改時,自動重啟項目
app.use()函數(shù)的作用是用來注冊全局中間件的 中間件(Middleware ),特指業(yè)務(wù)流程的中間處理環(huán)節(jié)。
中間件
除了錯誤級別的中間件,其他的中間件必須在路由之前配置
CORS 主要在服務(wù)器端進行配置??蛻舳藶g覽器無須做任何額外的配置,即可請求開啟了 CORS 的接口。
通過cors實現(xiàn)跨域資源共享必須要配置一系列響應(yīng)頭,跟cors相關(guān)的響應(yīng)頭都是以Access-Control-Allow開頭的
數(shù)據(jù)庫
傳統(tǒng)型數(shù)據(jù)庫的數(shù)據(jù)組織結(jié)構(gòu),與 Excel 中數(shù)據(jù)的組織結(jié)構(gòu)比較類似。
柚子快報邀請碼778899分享:Node.js常用知識點總結(jié)
參考文章
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。