文章目錄
- 1.瀏覽器原理
- 1.1 瀏覽器的五部分組成
- 1.2 渲染引擎(也叫做排版引擎或瀏覽器內核)
- 1.3 瀏覽器訪問服務器的程序
- 1.4 HTTP請求報文和回應報文
- 2.web開發本質
- 3.什么是node.js?
- 4.node.js有哪些特點?
- 5.安裝Node.js
- 6.傳統開發和node.js開發
- 6.1 傳統web開發(PHP、JSP等等)
- 6.2 node.js開發
- 7.REPL(Read-Eval-Print-Loop)互動式解釋器
- 8.JavaScript檔案命名規則
- 9. node執行js檔案
1.瀏覽器原理
1.1 瀏覽器的五部分組成
1.人機互動部分(UI界面)
2.網路請求部分(Socket)
3.JavaScript引擎部分(負責解釋和執行JavaScript)
4.渲染引擎部分(渲染HTML,CSS等)
5.資料存盤部分(cookie,HTML5中的本地存盤LocalStorage,SessionStorage)
1.2 渲染引擎(也叫做排版引擎或瀏覽器內核)
這里詳細解釋一下渲染引擎,了解知道就好,下面是比較流行的幾種渲染引擎:

渲染引擎的作業原理分4個步驟:
1.決議HTML構建DOM樹,
2.構建渲染樹,這里的渲染樹并不等同于DOM樹,像head或者display這樣的標簽和屬性沒必要放到渲染樹中,
3.對渲染樹進行布局,定位坐標和大小,是否還寒,確定position,overflow,z-index等等,該程序為 layout 或者 reflow,
4.繪制渲染樹,呼叫作業系統底層API進行繪圖操作,
1.3 瀏覽器訪問服務器的程序
總共是下面10個步驟:
1.在瀏覽器中輸入網址,
2.瀏覽器通過用戶在地址欄中輸入的URL構建HTTP請求報文,
3.瀏覽器發起DNS決議請求,將域名轉換成IP地址,
4.瀏覽器將請求報文發送給服務器,
5.服務器接收請求報文,并決議,
6.服務器處理用戶請求,并將處理結構封裝成HTTP回應報文,
7.服務器將HTTP相應報文發送給瀏覽器,
8.瀏覽器接受服務器回應的HTTP報文,并決議,
9.瀏覽器決議HTML頁面并展示,在決議HTML頁面時遇到新的資源需要再次發起請求,
10.最終瀏覽器展示出了頁面,
理解好請求HTTP報文和相應HTTP報文就可以了,
1.4 HTTP請求報文和回應報文
配合兩個圖,來了解:


每一個部分包含不同的資訊,
2.web開發本質
一般web都是下面三點一樣:
1.請求,客戶端發起請求,
2.處理,服務器處理請求,
3.回應,服務器將處理結果發送給客戶端,
3.什么是node.js?
node.js首先就是它不是一門語言,而是一個開發平臺,
該平臺使用的編程語言是JavaScript語言,
什么是開發平臺?
有對應的編程語言,有該語言的運行時,有特定功能的API(SDK:Software Development Kit),
node.js可以實作什么功能:
1.可以開發命令列程式、CLI程式(控制臺命令程式)
2.借助node-webkit 、electron等框架,來使用node.js構建桌面應用程式,
3.Web應用程式(網站),
和PHP開發技術堆疊Lamp、Wamp一樣,node.js也有一個全堆疊開發技術堆疊: MEAN : MongoDB 、 Express 、 Angular 、 Node.js ,
4.node.js有哪些特點?
1.事件驅動(當事件觸發時,執行傳遞過去的回呼函式),
2.非阻塞 I / O 模型(當執行I / O操作,不會阻塞執行緒),
3.單執行緒(JS本來無論在瀏覽器端還是服務端都是單執行緒),
4.擁有世界最大的開源庫生態系統 --》 npm,
5.安裝Node.js
官方下載node.js,
注意配置:環境變數配置
這里命令列的作業行程是先找當前目錄下的內容,再找環境變數Path下的目錄內容,了解一下就行,
安裝和配置好后,直接命令列node -v 查看一下版本就行,
通過 nvm-windows 管理一臺計算機的多個node版本,常用命令包括一下:
nvm version
nvm install latest
nvm installl 版本號
nvm uninstall 版本號
nvm list
nvm use 版本號
同樣linux也有,nvm(Linux、Unix、OS X)常用命令包括:
nvm install node (安裝最新版本的node)
nvm use node (使用指定的node版本)
要先安裝nvm,再安裝nodejs版本,這樣可以避免一下沒必要的錯誤,nvm全稱是node version manage,
6.傳統開發和node.js開發
6.1 傳統web開發(PHP、JSP等等)
傳統開發都是需要一個web服務器的,并且靜態網頁運行和動態網頁運行都有一定區別,如下圖:
這里web服務器作用是監聽埠(默認:8080),處理發送過來的請求和回應瀏覽器,

6.2 node.js開發
node.js不需要web服務器,因為它本身就含有服務器的一些功能,也可以說它自己就是web服務器,如下圖:
這里nodejs行程本身來監聽8080埠,

7.REPL(Read-Eval-Print-Loop)互動式解釋器
REPL,r 讀取 ,E 執行,P 列印 ,L 回圈,
REPL撰寫程式和谷歌瀏覽開發人員工具中的控制臺功能差不多,
在終端直接輸入node命令進入REPL環境,
退出REPL界面,輸入.exit 或 ctrl + C(按兩次C鍵) ,

8.JavaScript檔案命名規則
1.不要用中文,
2.不要包含空格,
3.不要出現node關鍵字,
4.建議以" - " 來分割單詞,
9. node執行js檔案
直接使用node來執行目錄下的js檔案就行:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/287738.html
標籤:其他
上一篇:C1-3 web基礎與布局
下一篇:js資料結構
