【每日前端面经】2023-02-27

题目来源: 牛客

CSS盒模型

CSS中的盒子包括margin|border|padding|content四个部分,对于标准盒子模型(content-box)的width=content,但是对于IE盒子模型(border-box)的width=content+border2+padding2

CSS选择器

  • 标签选择器
  • 类选择器
  • ID选择器
  • 参数选择器
  • 通用选择器
  • 组合选择器
  • 子代选择器
  • 后代选择器
  • 兄弟选择器
  • 相邻兄弟选择器
  • 列表选择器
  • 伪类选择器
  • 伪元素选择器

JS数据类型

  • Number
  • String
  • Object
  • Undefined
  • Null
  • Boolean
  • Symbol
  • BigInt

Webpack打包的理解、性能优化

本质上,webpack是一个现代JavaScript应用程序的静态模块打包器。当Webpack处理应用程序时,会递归的构建一个依赖关系图,其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个bundle

  • 提升基础环境版本
  • 使用include/exclude避免重复打包
  • 合理利用缓存
  • 合理使用plugin
  • 合理配置resolve
  • 启用多进程打包
  • 开发中使用热更新替换自动刷新
  • 使用DIIPlugin插件优化时间

前端性能优化

  • 浏览器
    • 减少HTTP请求
    • 使用HTTP2.0
    • 设置浏览器缓存
    • 白屏做加载动画
  • 资源
    • 静态资源CDN
    • 静态资源单独域名
    • GZIP压缩
    • 做服务端渲染
    • 头部放置CSS,底部放置JS
  • 图片
    • 字体图标代替图片图标
    • 精灵图
    • 图片懒加载
    • 图片预加载
    • 使用PNG格式的图片
    • 图片转BASE64格式
  • 代码
    • 慎用全局变量
    • 缓存全局变量
    • 减少回流与重绘
    • 节流防抖
    • 少用闭包
    • 减少数据读取次数
    • 文档碎片优化节点
    • 减少判断层级
    • 字面量与构造式
  • 项目
    • 长列表优化
    • web worker
    • 避免iframe
  • 打包
    • 减少代码体积
    • 按需加载
    • 提取第三方库代码
    • webpack dll优化

Vue2和Vue3的区别

  • 生命周期
  • 多根节点
  • 组合式API
  • 异步组件
  • Teleport: 可以将部分DOM移动到APP之外的位置
  • 响应式原理: Vue2的原理是Object.defineProperty;Vue3的原理是Proxy/Reflect
  • 虚拟DOM: 新增patchFlag字段,优化渲染
  • 事件缓存
  • Diff算法优化
  • 打包优化: 新增Tree-shaking
  • TypeScript支持

Vue-Router的原理

路由描述的是URL与UI之间的映射关系,这种隐射是单向的,即URL变化引起UI变化(无需刷新页面)

  • hash模式: 通过hashchange事件监听URL的变化
  • history模式: 拦截pushState/replaceState的调用和标签的点击事件监听URL的变化

开发中遇到错误怎么排查

css盒模型(css的两种盒模型:标准盒模型、怪异盒模型)和 css3指定盒子模型种类的box-sizing属性
深入浅出vue-router原理
CSS 3 所有的选择器整理(2023.2)
判断Vue3与Vue2的区别
web前端性能优化(全汇总)
webpack 打包原理及流程解析,超详细!

相关推荐
QQ1__8115175155 小时前
Spring boot名城小区物业管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
前端·vue.js·spring boot
钛态5 小时前
前端微前端架构:大项目的救命稻草还是自找麻烦?
前端·vue·react·web
一粒黑子6 小时前
【实战解析】阿里开源 PageAgent:纯前端 GUI Agent,一行JS让网页支持自然语言操控
前端·javascript·开源
独角鲸网络安全实验室6 小时前
2026微信小程序抓包全解析:从实操落地到合规风控,解锁前端调试新范式
前端·微信小程序·小程序·抓包·系统代理绕过·https证书严格校验·进程隔离
紫微AI6 小时前
前端文本测量成了卡死一切创新的最后瓶颈,pretext实现突破了
前端·人工智能·typescript
GISer_Jing6 小时前
AI前端(From豆包)
前端·aigc·ai编程
IT枫斗者6 小时前
前端部署后如何判断“页面是不是最新”?一套可落地的版本检测方案(适配 Vite/Vue/React/任意 SPA)
前端·javascript·vue.js·react.js·架构·bug
测试修炼手册6 小时前
[测试技术] 深入理解 JSON Web Token (JWT)
前端·json
AI老李6 小时前
2026 年 Web 前端开发的 8 个趋势!
前端
里欧跑得慢6 小时前
15. Web可访问性最佳实践:让每个用户都能平等访问
前端·css·flutter·web