Webpack 常見面試題

2022-06-21 07:18:17 字數 1464 閱讀 3275

目錄

前端為什麼要進行打包和構建?

module chunk bundle區別

loader和plugin的區別

babel和webpack的區別

webpack如何實現懶載入

如何產出乙個lib

babel-polyfill babel-runtime區別

為什麼proxy不能被polyfill

webpack優化構建速度

webpack優化產出**

前端為什麼要進行打包和構建?

**層面:

研發流程層面:

module chunk bundle區別

module - 各個原始碼檔案,webpack中一切皆模組

chunk - 多模組合併成的

在 entry import() splitchunks 都可以定義chunk:

entry: ,

import(

'./***/djdj.js

').then(res=>)

//splitchunks **分割;htmlwebpackplugin引用 chunk

bundle -最終輸出檔案

loader和plugin的區別

loader 模組轉換器 (less->css)

plugin 是擴充套件外掛程式,如htmlwebpackplugin

常見的loader和plugin有哪些?

loader:

plugin:

babel和webpack的區別

babel js新語法編譯工具,只關心語法,不關心模組化

webpack -打包構建工具,是多個loader plugin的集合

webpack如何實現懶載入

import()

如何產出乙個lib

output: ,

babel-polyfill babel-runtime 區別

babel-polyfill 會汙染全域性

babel-runtime 不會汙染全域性,產出第三方lib時要用babel-runtime

為什麼 proxy 不能被 polyfill

如 class 可以用 function 模擬

如 promise 可以用 callback 模擬

但是 proxy 功能用 object.defineproperty 無法模擬

webpack優化構建速度

不能用於生產環境:

自動重新整理

熱更新dllplugin

webpack優化產出**

小base64編碼

bundle加hash

懶載入提取公共**

使用cdn加速

ignoreplugin

使用production

scope hosting

(場景、效果、原理)

常見面試題

1.get和post的區別 1 本質區別 get是向伺服器請求資料,post是向伺服器傳送資料。2 伺服器獲取值的方式 get方式提交的資料,伺服器端使用request.querystring獲取變數的值。post方式提交的資料,伺服器端使用request.form獲取資料。3 安全性 get安全效...

常見面試題

1 一行 實現1 100之和 lst i for i in range 1,101 print sum lst 2 如何在乙個函式內部修改全域性變數?在函式內部新增 global 變數名 這樣就可以在本地作用域定義全域性作用域了 name 大明 def eat name1 global name n...

常見面試題

dns解析 發起tcp三次握手,並建立tcp連線 發起http請求 伺服器相應http請求並得到html 伺服器解析html 並對頁面進行渲染然後返回給使用者 首先先進行ioc容器的初始化 ioc 容器的初始化過程分為三步驟 resource 定位 beandefinition 的載入和解析,bea...