中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
Web前端知識(shí)擴(kuò)展【思維導(dǎo)圖】

Web前端思維導(dǎo)圖見文章底部

1??、瀏覽器工作原理

1.1 瀏覽器的組成

  • 人機(jī)交互部分(UI)
  • 網(wǎng)絡(luò)請(qǐng)求部分(Socket)
  • JavaScript引擎部分(解析執(zhí)行JavaScript Chrome V8引擎)
  • 渲染引擎部分(渲染HTML、CSS等)
  • 數(shù)據(jù)存儲(chǔ)部分(Cookie、LocalStorage、SessionStorage)

1.1.2 瀏覽器訪問網(wǎng)站的過程

  • 在瀏覽器地址欄中輸入網(wǎng)址
  • 瀏覽器通過用戶在地址欄輸入的URL構(gòu)建HTTP請(qǐng)求報(bào)文
  • 瀏覽器發(fā)起DNS解析請(qǐng)求 將域名轉(zhuǎn)換為IP地址(找到對(duì)應(yīng)資源的服務(wù)器)
  • 瀏覽器將請(qǐng)求報(bào)文發(fā)送給服務(wù)器
  • 服務(wù)器接收請(qǐng)求報(bào)文 并解析
  • 服務(wù)器處理用戶請(qǐng)求 并將處理結(jié)果封裝成HTTP響應(yīng)報(bào)文
  • 服務(wù)器將HTTP響應(yīng)報(bào)文發(fā)送給瀏覽器
  • 瀏覽器接收服務(wù)器響應(yīng)的HTTP報(bào)文 并解析
  • 瀏覽器解析HTML頁(yè)面并展示 在解析HTML頁(yè)面時(shí)遇到新的資源需要再次發(fā)起請(qǐng)求
  • 最終瀏覽器展示出頁(yè)面

1.2 主流瀏覽器渲染引擎

1.2.1 雙核瀏覽器

1.2.1.1 什么是雙核瀏覽器?

有兩個(gè)不同的渲染引擎內(nèi)核(IE引擎||Chrome引擎)

1.2.1.2 為什么要雙核瀏覽器?

為了解決 某些企業(yè)內(nèi)部的OA系統(tǒng) 這些系統(tǒng)有可能只能在IE內(nèi)核中打開 其他內(nèi)核不能打開 這樣的話雙核瀏覽器就可以切換內(nèi)核 但有時(shí)可能會(huì)去訪問外網(wǎng) 這時(shí)就可以繼續(xù)切換內(nèi)核

1.2.2 主流 渲染內(nèi)核

  • Chrome瀏覽器 => Blink引擎(webkit引擎的分支)
  • Safari瀏覽器 => webkit引擎
  • FireFox瀏覽器 => Gecko引擎
  • Opera瀏覽器 => Blink引擎(早期使用Presto引擎)
  • Internet Explorer瀏覽器 => Trident引擎
  • Microsoft Edge => EdgeHTML引擎(Trident引擎的分支)

1.2.3 瀏覽器渲染引擎的工作原理

  • 解析HTML構(gòu)建DOM樹(Document Object Model 文檔對(duì)象模型)
  • 構(gòu)建渲染樹 渲染樹并不等同于DOM樹 像head標(biāo)簽link標(biāo)簽等或display:none這樣的元素就沒必要放在渲染樹中 但是它們都會(huì)存在于DOM樹中
  • 對(duì)渲染樹進(jìn)行布局、定位坐標(biāo)、大小、是否換行、確定position、overflow、z-index... 這個(gè)過程叫 layout或reflow
  • 繪制渲染樹 調(diào)用操作系統(tǒng)底層API進(jìn)行繪圖操作
    瀏覽器渲染網(wǎng)站過程視頻 https://www.youtube.com/watch?v=ZTnIxIA5KGw

1.2.3.1 頁(yè)面加載優(yōu)化

需求: 點(diǎn)擊按鈕創(chuàng)建50個(gè)input 思考: 不要循環(huán)去創(chuàng)建至頁(yè)面 因?yàn)闀?huì)產(chǎn)生回流(每次循環(huán)都會(huì)重新渲染一次頁(yè)面 Layout、reflow) 解決方案: 循環(huán)創(chuàng)建50個(gè)文本框至文檔片段中(document.createDocumentFragment()) 文檔片段MDN https://developer.mozilla.org/zh-CN/docs/Web/API/Document/createDocumentFragment


2??、Web開發(fā)本質(zhì)

  • 請(qǐng)求 客戶端發(fā)起請(qǐng)求
  • 處理 服務(wù)器處理請(qǐng)求
  • 響應(yīng) 服務(wù)器將處理的結(jié)果發(fā)送給客戶端
    客戶端處理響應(yīng)
    (瀏覽器: 解析服務(wù)器返回的數(shù)據(jù))
    (IOS、Android: 解析服務(wù)器返回的數(shù)據(jù) 并且通過IOS或Android的UI技術(shù)實(shí)現(xiàn)界面的展示功能)

3??、開發(fā)全棧

3.1 PHP開發(fā)技術(shù)棧

LAMP

  • Linux
  • Apache
  • MySQL
  • PHP

3.2 Node.js 全棧開發(fā)技術(shù)棧

MEAN

  • MongoDB
  • Express
  • Angular
  • Node.js

4??、為什么要配置環(huán)境變量

為了讓某個(gè)應(yīng)用程序在任何路徑下通過命令行運(yùn)行成功


5??、Node.js 開發(fā)網(wǎng)站和傳統(tǒng)PHP等開發(fā)網(wǎng)站的區(qū)別

5.1 Node.js 開發(fā)網(wǎng)站

  • 不需要Web容器 因?yàn)镹ode.js 本身就是基于更底層的HTTP協(xié)議開始的 本身就是一個(gè)HTTP服務(wù)器
  • node.exe 進(jìn)程監(jiān)聽8080(代碼中設(shè)置的端口號(hào))端口 接收用戶請(qǐng)求 根據(jù)不同請(qǐng)求做出對(duì)應(yīng)的處理 最后將處理后的結(jié)果返回給瀏覽器

5.2 傳統(tǒng)PHP等開發(fā)網(wǎng)站

  • 需要Web服務(wù)器
  • 監(jiān)聽端口(8080)解析用戶請(qǐng)求報(bào)文 讀取成功后將文件內(nèi)容響應(yīng)給瀏覽器

6??、同步、異步

6.1 同步

  • 代碼
    從上往下執(zhí)行
  • 現(xiàn)實(shí)
    同一個(gè)人同時(shí)只能做一件事件 后面的事情?等前面的事情執(zhí)行完才能執(zhí)行 需等待

6.2 異步

  • 代碼
    某段代碼執(zhí)行 不會(huì)阻塞后面代碼的執(zhí)行
  • 現(xiàn)實(shí)
    同一個(gè)人 同時(shí)做很多事情 后面的事情無須等待 同時(shí)執(zhí)行
  • JavaScript中的異步
    絕大多數(shù)具有*回調(diào)函數(shù)*的代碼都是異步的

定時(shí)器 回調(diào)函數(shù) Node.js 中的文件讀寫 AJAX jQuery中的動(dòng)畫函數(shù)中的回調(diào)函數(shù) ...


XMind筆記


總結(jié)

后面會(huì)增加HTTP和HTTPS協(xié)議、回流、重繪、WebSocket、.... 等

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
1. javascript 回顧
SAP Spartacus develop branch 的服務(wù)器端渲染啟動(dòng)方式
深入研究Node.js開發(fā)Web應(yīng)用程序
基于 Node.js 實(shí)現(xiàn)前后端分離
下面是渲染引擎在取得內(nèi)容后的基本流程:瀟灑
瀏覽器打開URL的方式和加載過程
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服