Web開發基礎-Node.js-01

01-瀏覽器工做原理

1)人機交互部分(ui)javascript

2)網絡請求部分(socket)css

3)javascript引擎html

4)渲染引擎(解析html,css)java

5)數據存儲部分(cookie,本地存儲等)node

--渲染引擎介紹git

工做原理:github

     解析html,構建dom樹web

     構建渲染樹chrome

     對渲染樹佈局npm

     繪製渲染樹,調用操做系統底層API進行繪圖操做


02渲染器工做原理-WEB-worker

簡介:

JavaScript 語言採用的是單線程模型,也就是說,全部任務只能在一個線程上完成,一次只能作一件事。前面的任務沒作完,後面的任務只能等着。隨着電腦計算能力的加強,尤爲是多核 CPU 的出現,單線程帶來很大的不便,沒法充分發揮計算機的計算能力。

----------重點------------

爲 JavaScript 創造多線程環境,容許主線程建立 Worker 線程,將一些任務分配給後者運行。在主線程運行的同時,Worker 線程在後臺運行,二者互不干擾。等到 Worker 線程完成計算任務,再把結果返回給主線程。這樣的好處是,一些計算密集型或高延遲的任務,被 Worker 線程負擔了,主線程(一般負責 UI 交互)就會很流暢,不會被阻塞或拖慢。

Worker 線程一旦新建成功,就會始終運行,不會被主線程上的活動(好比用戶點擊按鈕、提交表單)打斷。這樣有利於隨時響應主線程的通訊。可是,這也形成了 Worker 比較耗費資源,不該該過分使用,並且一旦使用完畢,就應該關閉。

----------使用須知---------

(1)同源限制

分配給 Worker 線程運行的腳本文件,必須與主線程的腳本文件同源。

(2)DOM 限制

Worker 線程所在的全局對象,與主線程不同,沒法讀取主線程所在網頁的 DOM 對象,也沒法使用document、window、parent這些對象。可是,Worker 線程可使用navigator對象和location對象。

(3)通訊聯繫

Worker 線程和主線程不在同一個上下文環境,它們不能直接通訊,必須經過消息完成。

(4)腳本限制

Worker 線程不能執行alert()方法和confirm()方法,但可使用 XMLHttpRequest 對象發出 AJAX 請求。

(5)文件限制

Worker 線程沒法讀取本地文件,即不能打開本機的文件系統(file://),它所加載的腳本,必須來自網絡。

------詳見-------

阮一峯


02-渲染器工做原理

一、概述
渲染引擎的主要職責是在瀏覽器屏幕上顯示請求的頁面。
渲染引擎能夠顯示HTML和XML文檔和圖像。若是您使用額外的插件,引擎還能夠顯示不一樣類型的文檔,如PDF。
二、渲染引擎
Gecko - 火狐
WebKit - Safari
Blink - Chrome,Opera
三、渲染過程
解析HTML以構造DOM樹
構建渲染樹
佈局渲染樹
繪製渲染樹
四、href=https://segmentfault.com/a/1190000014738736----詳見-----
五、名詞解釋
SPA:Single pages web application/咳咳
Web Workers:http://www.ruanyifeng.com/blog/2018/07/web-worker.html?20190318210447#comment-last
---------額外---------
http://www.javashuo.com/article/p-ynabscux-bh.html
https://segmentfault.com/
http://www.ruanyifeng.com/blog/
https://github.com/NationalSecurityAgency/ghidra


03-瀏覽器工做流程

對url進行請求報文封裝,尋找服務器ip,服務器解析請求報文,生成響應報文,解析報文,生成DOM樹,構建渲染樹,佈局渲染樹,繪製渲染樹。


04-瞭解http請求處理響應


05-Node.js瞭解

簡介
一、Node.js開發平臺,JavaScript開發語言
二、集成chrome V8JavaScript引擎,
三、可用的API
能力:
一、命令行程序
二、藉助第三方開發界面應用程序(GUI)
三、開發網站
Node.js全棧:MEAN -MongoDB, Express,Angular,Node.js
特色:
一、事件驅動
二、非阻塞 I/O模型:輸入輸出
三、單線程
四、npm

文檔:

相關文章
相關標籤/搜索