面试题速刷 - 实战会碰到的一些问题

news/2024/10/18 20:28:02/文章来源:https://www.cnblogs.com/gardenOfCicy/p/18474533
  1. 页面如何进行首屏优化
  • 路由懒加载
  • 服务端渲染SSR

    只获取HTML就可以,里面包含data。
  • APP预取(啥东西)

    APP结合H5、结合JS bridge
  • 分页
  • 图片懒加载 lazyload
  • Hybrid

    总结:
  1. 后端一次性返回10w条数据,你会如何渲染?
    本身后端设计方案的设计就不合理!非要的话......
  • 自定义中间层:
  • 虚拟列表:很复杂,借助第三方lib。快速滚动会频繁创建、频繁销毁DOM。


  1. 前端常用的设计模式并说明使用场景?
    优秀的程序员并需要了解设计模式!好。
  • 设计原则:组件结构、API、数据结构...
    开放封闭原则,对扩展开放(可扩展新功能的,),对修改封闭(对现有功能保持原子性不要动了)。
  • 工厂模式

    在工厂函数内部写逻辑。
  • 单例模式 一个类只能有一个实例。


  • 代理模式

  • 观察者模式
  • 发布订阅:自定义事件

  • 装饰器模式 @testable 在不改变自身对象的基础上,在程序运行期间给对象动态地添加方法。了解一下nest.js
  1. 观察者模式和发布订阅模式的区别?

    观察者模式的 Subject和Observer不需要中间媒介。如addEventListner
    发布订阅模式Publisher和Observer互不认识,需要中间媒介。如EvenBus自定义事件。

  2. 实际工作中对Vue做过哪些优化?

  • v-if和v-show
  • v-for使用key(其实一定要用)
  • computed
    缓存未读消息列表
  • keep-alive缓存组件
  • 异步组件:import引入体积比较大的组件
    defineAsyncComponent

  • 路由懒加载;项目比较大的情况下拆分路由,保证首页先加载。
  • 服务端SSR
    可使用Nuxt.js; 按需优化,使用SSR成本比较高。
    重点:性能优化要按需进行,不要为了优化而优化。
  1. 使用Vue的过程遇到哪些坑?
  • 内存泄漏
    组件内的全局变量、全局事件、全局定时器、自定义事件绑定之后没有及时销毁导致。

  • Vue2响应式的缺陷(Vue3解决了)

    ☝无法直接修改数组。push pop是ok的但是直接arr[index]修改不了。

  • 路由切换时 scroll 到顶部

    问题:比如某个新闻列表页,一开始是第一页内容,往上滑就加载第二页,再往上滑加载第三页。点进一条新闻详情页面,SPA页面其实是路由的切换,此时左边的的列表页已经销毁了。当从详情页返回到刚才的列表页时,列表页又会重新刷新渲染第一页,第二页,第三页...

    解决办法: 缓存下来

  1. 如何统一监听Vue组件报错?
  • window.onerror (JS)

    在App.vue中,mounted内写。但是try catch捕获的错误不会上报给window.onerror。、

  • errorCaptured生命周期
    vm:组件信息

  • errorHandler:在main.js中进行配置,一旦监听到错误会阻止向window.onerror传播。

    还有warnHandler(警告)

-异步错误:Vue自己监听不了。
总结:

  • 如果一个H5很慢,如何排查性能问题?(面sf被问到过类似的)
    访问慢?操作慢?
    首先我们要知道前端性能指标👇❗
    First Paint(FP) 第一次渲染
    First Contentful Paint(FCP) 第一次有内容的渲染
    First Meaningful Paint(FMP)已弃用 改用LCP
    Largsest Contentful Paint(LCP)
    DomCotentLoaded(DCL)
    Load(L)

    👏有用的工具:1. Chrome devTool 2. lighthouse
    1. Chrome devTool

    2. lighthouse 谷歌浏览器已经自带了?
    加载慢的对策:

    渲染慢的对策:

    持续跟进:

    总结:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/817032.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

氏发

这个作业属于哪个课程 2024高级语言程序设计 (福州大学 - 计算机与大数据学院)这个作业要求在哪里 高级语言程序设计课程第三次个人作业学号 102400117姓名 廖逸轩

二、STM32F103C8T6-定时器

STM32F103C8T6 定时器概述 STM32F103C8T6 作为一款广泛使用的微控制器,内置多个定时器,能够支持多种计时和控制功能,如精确延时、脉冲宽度调制(PWM)、捕获比较(Capture/Compare)、输入捕获 和 输出比较 等。这些功能在电机控制、信号测量、周期性事件触发等应用中非常常…

Sparse Table

Sparse Table 可用于解决这样的问题:给出一个 \(n\) 个元素的数组 \(a_1, a_2, \cdots, a_n\),支持查询操作计算区间 \([l,r]\) 的最小值(或最大值)。这种问题被称为区间最值查询问题(Range Minimum/Maximum Query,简称 RMQ 问题)。预处理的时间复杂度为 \(O(n \log n)\…

计量经济学(十一)——联立方程模型的估计

img { display: block; margin-left: auto; margin-right: auto } table { margin-left: auto; margin-right: auto } 联立方程模型(Simultaneous Equations Model, SEM)是一类包含多个相互依赖变量的统计模型,用来描述这些变量之间的相互关系。在传统的单一方程模型中,通常…

数据结构与算法 课程随记

数据结构与算法 课程随记因为有时候需要在不同设备编辑同一份文档,本地不太方便了,先在放着博客园比较省事吧。 但是博客园是不是快要四了啊,没事再整一个个人博客吧。 Class https://www.runoob.com/cplusplus/cpp-classes-objects.html大纲 定义成员函数,(无论public/pri…

pve安装后删除local-lvm并把其空间全部分给local

在安装pve的时候,系统默认分配给local的空间非常小,我们可以通过以下方法把local-lvm删除,并将其空间还给local。 在webui的pve节点的磁盘选项中找到LVM-Thin,删除data卷。删除后此处为空。 接着打开终端执行以下命令: lvresize --extents +100%FREE --resizefs pve/root此…

PYNQ Z2 读取xadc外部通道电压

使用XADC 或者JTAG只能读取XADC的内部电压, 而无法读取外部通道的电压 现在使用xsysmon.h库里面的函数进行XADC外部通道的电压 为了方便观察,增加了PL GPIO KEY LED进行观察 1. 配置ZYNQ70002.添加两个axi gpio并进行配置 AXI GPIO0AXI GPIO13. 添加XADC进行配置 这里选择axi l…

10.18 模拟赛

炼石计划 10 月 04 日 NOIP 模拟赛 #8【补题】 - 比赛 - 梦熊联盟 (mna.wang) 复盘 T1 有种 div.2 B 的风格,没秒,想看题。 T2。只判是否无解?\(k \le 100\)?把 \(200\) 个关键连通块拿出来建图跑传递闭包不就做完了。 一遍过大样例?简直不可思议,但还是把 T2 关了吧。 用…

小心!这样分享 B 站视频会暴露身份

已经有被开盒的案例了。‍ 在 2022 年 6 月 10 日 0 点,B 站在视频的网址上加了个参数 ?vd_source=XXXXXXXXXXXXXXX​,如图: ​ 经过网友的测试,这个参数值很可能就是用户 ID 的 hash 值(简单来说就是用户身份),所以如果直接复制网址的话,是有可能被“开盒”的。 ‍ 其…

局部静态变量的初始化观测

局部静态变量的初始化观测//全局变量int global=0x11111;int main(int argc, char* argv[]){ //局部变量 int temp=0x160; global=global+temp; return 0;}6: int global=0x111111;7: int main(int argc, char* argv[])8: {00401010 push …

想玩Steam游戏,但配置太低?ToDesk云电脑一招搞定!

在游戏爱好者的世界里,汇集了许多游戏大作的Steam平台无疑是一座宝库。但对于许多玩家来说,拥有一颗渴望畅玩游戏的心,却常常被低配置的电脑设备所束缚。尤其是面对硬件要求极高的3A大作时,低配置的电脑往往力不从心,卡顿、掉帧等问题让人苦恼不已。但别担心!小编最近发现…

孩子对手机有了渴望,家长该如何应对?ToDesk远程防沉迷

在现代生活中,手机已经成为我们密不可分的生活工具,日常工作社交生活都要靠手机来完成。 但近年来,手机的各类视频游戏等app诱惑在不断加大,导致孩子总是抱着手机不放,家长对此类问题头疼不已。 ToDesk远程控制软件可以另辟蹊径用远程控制软件解决掉孩子手机沉迷问题,只需…