2021面试问题总结

1.双向绑定的原理

1.实现一个监听器Observer,用来劫持并监听所有属性,如果有变动的,就通知订阅者。
2.实现一个订阅者Watcher,可以收到属性的变化通知并执行相应的函数,从而更新视图。
3.实现一个解析器Compile,可以扫描和解析每个节点的相关指令,并根据初始化模板数据
以及初始化相应的订阅器。

2.vuex存储在哪里,vuex存的数据页面刷新之后,存的值还还在吗

vuex存储在内存,用于组件中传值,当刷新页面,存储的值丢失
当两个组件共用一个数组时,其中一个变化了希望另一个组件也变化,localstorage做不到。

3.大屏数据怎么做到实时更新
4.路由有哪几种模式,常用的是哪种

5.vue页面等元素加载完成之后调用的方法

this.$nextTick(()=>{
    this.$refs.wechatBind.reloadWxLogin();
});

6.vue修改数据,给数组对象赋新值用什么

this.$set

7.组件之间的通信

props和$emit
vuex

8.es6新特性

1.let、const
2.展开运算符(用三个连续的点 (...) 表示)是 ES6 中的新概念,使你能够将字面量对象展开为多个元素
3.箭头函数

9.闭包的好处

用处:
1.读取函数内部的变量;
2.这些变量的值始终保持在内存中,不会在外层函数调用后被自动清除。
优点:
1:变量长期驻扎在内存中;
2:避免全局变量的污染;
3:私有成员的存在 ;

10.箭头函数和function区别

1.this指向
使用function定义的函数,this的指向随着调用环境的变化而变化的,
而箭头函数中的this指向是固定不变的,一直指向的是定义函数的环境
2.构造函数
function是可以定义构造函数的,而箭头函数是不行的(不能使用new)。
3.变量提升
function在变量提升中是最高的,箭头函数没有函数提升,所以箭头函数要定义于调用之前

11.路由拦截

beforeeach 没登录的时候访问就跳转登录页,登录了就访问具体页面
token判断有两种方法,1跳转前判断,2个人中心初始化的时候判断。
第一种如果我直接输入url就判断不了。
第二种,我要是没登录就会出现白页。闪一下。然后再跳走。

你可能感兴趣的:(2021面试问题总结)