前端 面試問題

2022-09-09 17:09:34 字數 2867 閱讀 8358

二.傳輸方式的分類

三. 分組交換協議

四.tcp/ip 參考模型。

五.get 和 post 的區別

六.webpack

作業系統通過時間片輪轉機制,在多個程式之間進行切換,合理排程。這種方式叫做多任務排程。

1.1分組交換協議:

分組交換就是將大資料分裝成乙個個小包發給對方。

1.2 各個分層的作用

傳輸層:起可靠傳輸的作用。(資料沒有到達,它會負責重發)

資料鏈路層:負責物理層面的互連(資料幀的生成和接收)。

負責0,1 位元流與電壓的高低、光的閃滅之間的互換。

傳送的時候,每一層上,都要處理上一層傳過來的資料,然後加上當前協議所必須的 「首部」,然後在接受端對收到的資料進行 「首部」 與 「內容」 的分離。再**到上一層,並最終將資料恢復為原樣。

資料鏈路層 的段和中繼器

面向有連線就好比人們平時打**,輸入完對方號碼呼出去,只有對端拿起**才能真正的通話,通話後結束,將**機扣上,就如同切斷電源。

原本的時候,鑑於一台電腦在收發資訊的時候,要獨佔整條資料,如果併發使用者數超過交換機之間的通訊線路數,就意味著通訊根本無法實現。為此,人們想到了乙個新方法,就是將要傳送的資料分成多個資料報,按照一定的順序排序之後發過去。所有的計算機可以一併收發資料,提高了通訊線路的利用率,這就是分組交換協議。

大概過程就是,傳送端將資料分組傳送給路由器,路由器接受到這些訊息以後,快取到自己的緩衝區,然後再**給目標計算機,

udp有別於tcp,它是一種面向無連線的傳輸層協議,udp不會關注對端是否真的收到訊息,如果要檢測對端是否收到分組資料報,或者對端是否連線到網路,這需要在應用程式中實現。

4.1 tcp模組的處理

負責建立連線、傳送資料、斷開連線。tcp 負責將應用層發來的資料順利的送到傳送至對端的可靠傳輸。

為了實現tcp的這一功能,需要在應用層的前端附加乙個 tcp首部。tcp首部中包括源埠號和目標埠(用以識別傳送主機跟接受主機的應用)、序號(用於傳送的包中那部分是資料)以及校驗(用以判斷資料是否被損壞),隨後將附加了 tcp 首部的包再發給 ip。

ip首部中應包含接收端的ip位址,以及傳送端的ip位址,緊隨著ip位址的就是用來判斷器後面的資訊是 tcp 還是 udp 的資訊。ip包生成以後,參考路由控制表,決定接受此ip包的路由或主機。隨後,ip包將被傳送給鏈結這些路由器或者主機網路結構的驅動程式,以實現真正的傳送資訊。

ip 頭部

資料鏈路層和網路層

路由位址和 mac 位址缺一不可

ip 任播:打110的時候,可以打給區域內的所有的 報警中心。

webpack 構建在node.js 環境下, webpack 是最流行的前端構建工具。

1. 什麼是 webpack

2.常見的loader

3.loader 和 plugin 的不同

4. webpack 的構建流程是什麼?從配置檔案到輸出檔案這個過程盡量說全。

webpack 的執行流程是乙個序列的過程,從啟動到結束會依次執行以下流程:

1 初始化引數:解析webpack配置引數,合併shell傳入和webpack.config.js檔案配置的引數,形成最後的配置結果;

2 開始編譯:上一步得到的引數初始化compiler物件,註冊所有配置的外掛程式,外掛程式監聽webpack構建生命週期的事件節點,做出相應的反應,執行物件的 run 方法開始執行編譯;

3 確定入口:從配置的entry入口,開始解析檔案構建ast語法樹(抽象語法樹),找出依賴,遞迴下去;

4 編譯模組:遞迴中根據檔案型別和loader配置,呼叫所有配置的loader對檔案進行轉換,再找出該模組依賴的模組,再遞迴本步驟直到所有入口依賴的檔案都經過了本步驟的處理;

5 完成模組編譯並輸出:遞迴完事後,得到每個檔案結果,包含每個模組以及他們之間的依賴關係,根據entry或分包配置生成**塊chunk;

6 輸出完成:輸出所有的chunk到檔案系統;

在構建生命週期中有一系列外掛程式在做合適的時機做合適事情,比如uglifyplugin會在loader轉換遞迴完對結果使用uglifyjs壓縮覆蓋之前的結果。

webpack 面試題總結

前端面試問題

1 對mvc的理解 簡單來說,mvc是一種流行的程式架構。mvc是 模型 model 檢視 view 控制器 control 的英文首字母的縮寫,核心思想是 檢視和使用者互動 通過事件導致控制器改變 控制器改變導致模型改變 或者控制器同時改變兩者 模型改變 導致檢視改變 或者檢視改變 潛在的從模型裡...

前端面試問題(一)

web前端優化 事件冒泡 選項卡的實現 css布局相關 應該用float嗎?模組化程式設計 為什麼有閉包 延遲請求 作用域問題 語義化標籤 1 tite與h1的區別 2 b與strong的區別 3 i與em的區別 事件繫結 addeventlistener 繫結事件的物件方法。css選擇器問題 cs...

前端面試 問題總結

1 普通函式 箭頭函式,this的指向 乙個事件中,這兩個函式this的指向 2 處理scroll事件,來維護前端的效能 滾動會頻發觸發scroll事件,所以設定乙個時間,規定在此時間內scroll時間被觸發的次數,使用settimeout 注意重點需要在settimeout之前清除上一次返回的id...