VUE面试题汇总(五)

news/2024/7/10 0:26:22 标签: vue.js, vue, 面试, javascript, 前端

往期点这里:↓
VUE面试题汇总(一)
VUE面试题汇总(二)
VUE面试题汇总(三)
VUE面试题汇总(四)
41. vue的双向绑定的原理,和angular的对比

参考答案:
1、vue原理

数据劫持: vue.js>vue.js 是采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。

2、angular原理

脏值检查:angular.js 是通过脏值检测的方式比对数据是否有变更,来决定是否更新视图,最简单的方式就是通过 setInterval() 定时轮询检测数据变动,然而angular只有在指定的事件触发时进入脏值检测。

42. vue 如何优化首屏加载速度?

参考答案:
参考

43. vue 打包命令是什么?

参考答案:npm run build

44. vue 打包后会生成哪些文件?

参考答案:
dist文件夹下:

  1. css文件夹下的.css文件是项目要用到的css文件,当你做webpack打包的时候,会把所有的css样式打包到这里
  2. css文件夹下的.css.map文件是一个Source map文件,Source
    map就是一个信息文件,里面储存着位置信息。也就是说,转换后的代码的每一个位置,所对应的转换前的位置。目的是帮助我们调试被压缩过的css代码,只是方便我们开发的时候做调试使用。
  3. js文件夹下的.js.map依然是Source map文件,方便我们开发时调试js代码使用。
  4. app.js文件里放的是项目中各个页面的逻辑代码
  5. vendor.js放的是各个页面各个组件公用的一些代码

45. 如何配置 vue 打包生成文件的路径?

参考答案:
参考

46. vue 的服务器端渲染

参考答案:
参考

47. vue 开发命令 npm run dev 输入后的执行过程

参考答案:
参考

48. 什么是 Virtual DOM?

参考答案:可以看作是一个使用 javascript 模拟了 DOM 结构的树形结构

解析:参考

49. 响应式系统的基本原理

参考答案:

vue响应式的原理,首先对象传入vue实例作为data对象时,首先被vue遍历所有属性,调用Object. defineProperty设置为getter和setter,每个组件都有一个watcher对象,在组件渲染的过程中,把相关的数据都注册成依赖,当数据发生setter变化时,会通知watcehr,从而更新相关联的组件

50. Vue. js 全局运行机制

参考答案:
在这里插入图片描述

流程分析:

1.初始化以及挂载init, mount
2.在进行模板编译compile,将template编译为渲染函数render function
3.执行render function生成Virtual DOM, render function => VNode tree
4.再进行响应式依赖收集,render function => getter, setter => Watcher.update => patch。以及使用队列进行异步更新的策略。
5.通过diff算法后进行patch更新视图


http://www.niftyadmin.cn/n/805926.html

相关文章

ASP、IIS的安全漏洞 (转)

ASP、IIS的安全漏洞 (转)[more]ASP、IIS安全漏洞 当ASP以其灵活、简单、实用、强大的特性迅速风靡全球网站的时候,其本身的一些缺陷、漏洞也正威胁着所有的网站开发者,继上一篇中介绍了一些IIS的系统漏洞及ASP的安全问题后,本期中将针对最新…

游戏一爸!为你盘点Creator 3.0更新!

大家好,我是Nowpaper一爸学游戏,越来越有戏!在2020年的12月1日,国内游戏引擎工具 CocosCreator 发布了3.0 Preview版本。这个版本是将 CocosCreator 2.n 和 CocosCreator 3D 两套产品的合并版本,按照一般的认知&#x…

【JVM系列】对象详解

对象 创建过程 1、当Java虚拟机遇到一条字节码new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否被加载、解析和初始化过。如果没有,那必须先执行相应的类加载过程&#xff0…

jdk与jre区别

如果你希望进行Java开发,那么第一件事就是搭建Java环境,Java环境可以分为开发环境和运行环境。 开发环境: JDK,对应javac命令 运行环境: JRE,对应java命令 具体而言: JDK(Java Deve…

VUE面试题汇总(六)

往期点这里:↓ VUE面试题汇总(一) VUE面试题汇总(二) VUE面试题汇总(三) VUE面试题汇总(四) VUE面试题汇总(五) 51. 如何编译 template 模板&…

c++的矩阵乘法加速trick

最近读RNNLM的源代码,发现其实现矩阵乘法时使用了一个trick,这里描述一下这个trick。 首先是正常版的矩阵乘法(其实是矩阵乘向量) void matrixXvector(float* destvect, float* srcmatrix, int srcmatrix_rownum, int srcmatrix_c…

网络欺骗技术 (转)

网络欺骗技术 (转)[more]谷雨YESKY 什么是网络欺骗? 计算机系统及网络的信息安全将是新世纪中各国面临的重大挑战之一。在我国,这一问题已引起各方面的高度重视,一些典型技术及相关产品如密码与加密、认证与访问控制、入侵检测与响应、安全分…

我的女朋友简直太可爱了!!!!!!

明天12月12日,北京的伙伴有福了Cocos 沙龙「北京站」,下面是报名连接https://www.huodongxing.com/event/4573495981500说不定,你会遇到......本文原创公众号:不会笑青年,授权转载请联系微信(laughyouth369)&#xff0…