1.微前端如何实现的?JS变量怎么做到隔离的
答: qiankun中: 快照沙箱:将window的快照信息存在windowSnapshot中。激活期间,可能修改了window数据退出沙箱
代理沙箱隔离
2.vue3.0和vue2.0有什么区别?
3.diff算法
4.vue常用的通信
5.vuex怎么实现的?
6.封装子组件是如何考虑的,一般会用到哪些东西
答:1.数据从父组件传入 2.在父组件处理事件 3.记得留一个 slot 4.不要依赖 Vuex 5.合理运用 scoped 编写 CSS
7.ES6中Promise如何实现的?
8.vue2生命周期,数据请求放在哪个阶段
答: 一般来说我们会将数据请求放在mount阶段,如果放在created阶段那么SSR(Server-side Rendering)会在后端执行一次,在前端也执行一次,这并不符合我们的预期
9.重绘和回流的了解,重绘一定会回流吗?
答: 重绘: 在渲染树中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,不影响布局
回流:当渲染树中的一部分或全部因为元素的规模尺寸、布局、隐藏等改变时,浏览器重新渲染部分DOM或全部DOM的过程。
回流必定会引起重绘,重绘一定不会引起回流
10.常用的this在哪些场景中用到
答:1.全局中的this(浏览器环境下window,Node环境下Global)
2.普通函数中的this
3.对象方法中的this
4.事件方法中的this
5.构造函数中的this
6.箭头函数中的this
11.所有函数都有prototype对象,A.prototye = B.prototype,A会不会继承B所有的属性和方法,是A本身吗
答:箭头函数没有prototype对象
12.setTimeout中的this中代表什么
13.symbol在什么情况下用到,能不能作为vue中的key
14.对象深拷贝和浅拷贝的区别
15.vue中父子传参传的是个对象,子组件去修改数据,父组件那里的数据会不会变