首页 > 其他分享 >Vue面试题43:Vue3性能提升体现在哪些方面?(总结自B站up主‘前端杨村长’视频,仅供自用学习)

Vue面试题43:Vue3性能提升体现在哪些方面?(总结自B站up主‘前端杨村长’视频,仅供自用学习)

时间:2022-11-03 10:01:10浏览次数:47  
标签:初始化 面试题 Vue 性能 43 编译 Proxy Vue3

  • 分析

    • vue3在设计时有几个目标:更小、更快、更友好,这些改进多数和性能相关,因此可以围绕介绍;
  • 思路

    • 总述和性能相关的新特性;
    • 逐个说细节;
    • 能说点原理更佳;
  • 回答范例

    • 我会分别从代码、编译和打包三个方面介绍vue3性能方面的提升
    • 代码层面性能优化主要体现在全新的响应式API,基于Proxy的实现,使得初始化时间和内存占用均大幅改进;
    • 编译层面做了更多编译优化处理,比如静态提升、动态内容标记(patch flag)、事件缓存,区块等,可以patch过程中有效跳过大量的diff过程;
    • 打包时更好的支持tree-shaking,因此整体体积更小,加载更快;
  • 补充

  • 为什么基于Proxy的响应式会更快

    • Proxy是ES6标准原生支持,在初始化时会进行懒处理,不会做对象的深层次嵌套,只有用户访问时才进行拦截,因此初始化时间和内存占用都会更小;
    • 另外Vue3中依赖收集过程中会使用WeakMap、Map和Set保存响应式数据和副作用之间的依赖关系,更加轻量;

标签:初始化,面试题,Vue,性能,43,编译,Proxy,Vue3
From: https://www.cnblogs.com/Mochenghualei/p/16853459.html

相关文章

  • app 好用的手机端开发调试工具插件 vconsole vue3
    效果:可以在手机上看控制台的内容   $npminstallvconsole  在main.js里引入//添加移动端log查看调试器importVconsolefrom'vconsole';letvConso......
  • vue element-ui el-date-picker 时间拦截之傻瓜式教学,开始时间不能大于结束时间,结束时
    template部分<el-date-pickerdisabledpopper-class="planTime"style="display:inline-block"......
  • 在vue3+axios使用echarts的地图
    vue3+axios使用echarts的地图概述:在echarts的官网是直接提供的js代码和网上,如何在vue3中跑起来(各种跨域,各种报错让我想die)附加:之前一直跑不起来的很大原因是完全不清楚......
  • vue 部署docker容器
    1、修改vue.config.js配置文件若没有这个配置文件,就在项目根目录新建一个,增加以下配置:module.exports={#生产环境是否要生成sourceMapproductionSourceM......
  • vue富文本编辑器
    Vue-Quill-Editor主流富文本编辑器对比前言:vue中很多项目都需要用到富文本编辑器,在使用了ueditor和tinymce后,发现并不理想。所以果断使用vue-quill-editor来实现。wan......
  • 前端经典面试题
    HTML&CSS方面1、CSS选择器权重!important>行内样式>id选择器>类选择器>标签选择器>通配符>继承 2、盒模型在我们HTML页面中,每一个元素都可......
  • vue路由页面跳转
    import{useRouter}from'vue-router';exportdefault{setup(){const$router=useRouter();//点击方法functiongo(){$rou......
  • 20_Vue如何监测数组类型数据发生改变的?
    通过上一节,我们知道了vue检测对象数据发生改变的原理但是还有个api我们没有讲解,Vue.set();这个API比较适合在理解了对象检测的原理后进行讲解案例准备html<!--创建一......
  • vuex中能直接修改state吗?
    当我们使用vuex的时候,时不时能看到“更改Vuex中的store中的状态唯一办法就是提交mutations”,但是有没有试想过,我们不提交mutations其实也能修改state的值?答案是可以的我们......
  • Vue项目中定时器的问题...
    Vue项目中定时器的问题...比如说我们现在在a页面写一个定时,让他每秒钟处理操作,比如:每秒钟打印一个1,然后跳转到b页面,此时可以看到,定时器依然在执行。这样是非常消耗性能的......