整理基础点

1、vue实现双向数据绑定原理是什么?

2、v-model语法糖是怎么实现的

在input 上绑定message,并通过input事件获取当前事件的target.value,并赋值给message。

3、Hash和history有什么区别

4、什么是深拷贝和浅拷贝?以及怎么实现深拷贝和浅拷贝?

5、什么是原型什么是原型链?

6、箭头函数和普通函数有什么区别?

7、New操作符做了什么事情?

8、说一下eventloop.

9、什么是闭包,闭包的应用场景是什么

10、Promise是什么 有哪些语法 async await

11、Set 和 map有什么区别

12、Map foreach 有什么区别

13、localstorage sessionstorage cookie 有什么区别

14、Vuex有哪些基本属性 怎么在页面中使用方法

15、Loader和Plugin 有什么区别
Loader:直译为"加载器"。Webpack将一切文件视为模块,但是webpack原生是只能解析js文件,如果想将其他文件也打包的话,就会用到loader。 所以Loader的作用是让webpack拥有了加载和解析非JavaScript文件的能力。 Plugin:直译为"插件"。Plugin可以扩展webpack的功能,让webpack具有更多的灵活性。 在 Webpack 运行的生命周期中会广播出许多事件,Plugin 可以监听这些事件,在合适的时机通过 Webpack 提供的 API 改变输出结果。

18、项目中常用的性能优化方式是什么

19、怎么解决跨域问题的,你是怎么配置的

20、计算属性和watch有什么区别

21、Vue的生命周期是什么 每个钩子里面具体做了什么事情

22、组件之间的传值有几种方式

24、父组件到子组件更新的方式是什么样的

25、$nexttick 是干嘛的,你一般拿它做什么

26、Keepalive 是什么,里面有哪些钩子

27、插槽是什么 怎么使用的

28、Es6常见的语法你知道哪一些

29、自定义指令你是怎么用的

30、重绘和重排

31、常见的水平垂直方式

32、标准盒模型和怪异盒模型

33、Flex常见的属性 flex:1代表什么

34、Rem你是怎么做适配的

35、媒体查询是什么

36、首屏性能优化你是怎么做的

37、怎么解决白屏问题

38、浏览器的性能监控你是怎么做的

39、Diff算法是什么 :key = index 为什么不常用数组的下标作为index 加了它有什么好处

40、虚拟列表你是怎么实现的

41、说一下防抖和节流

42、说一下你项目的难点和你在项目中承担的角色 ,你觉的你在团队里是一个什么样的角色

44、说一下常见的检测数据类型的几种方式?

45、说一下data为什么是一个函数而不是一个对象?

46、说一下slice splice split 的区别?

47、说一下怎么把类数组转换为数组?


    //通过call调用数组的slice方法来实现转换
    Array.prototype.slice.call(arrayLike)

    //通过call调用数组的splice方法来实现转换
    Array.prototype.splice.call(arrayLike,0)

    //通过apply调用数组的concat方法来实现转换
    Array.prototype.concat.apply([],arrayLike)

    //通过Array.from方法来实现转换
    Array.from(arrayLike)


48、说一下数组如何去重,你有几种方法?

49、说一下proxy 它有什么优点

50、说一下vue3.0常用属性

51、说一下SPA单页面有什么优缺点?

优点:

1.体验好,不刷新,减少 请求  数据ajax异步获取 页面流程;

2.前后端分离

3.减轻服务端压力

4.共用一套后端程序代码,设配多端

缺点:

1.首屏加载过慢;

2.SEO 不利于搜索引擎抓取

52、说一下前端登录的流程?

初次登录的时候,前端调后调的登录接口,发送用户名和密码,后端收到请求,验证用户名和密码,验证成功,就给前端返回一个token,和一个用户信息的值,前端拿到token,将token储存到Vuex中,然后从Vuex中把token的值存入浏览器Cookies中。把用户信息存到Vuex然后再存储到LocalStroage中,然后跳转到下一个页面,根据后端接口的要求,只要不登录就不能访问的页面需要在前端每次跳转页面师判断Cookies中是否有token,没有就跳转到登录页,有就跳转到相应的页面,我们应该再每次发送post/get请求的时候应该加入token,常用方法再项目utils/service.js中添加全局拦截器,将token的值放入请求头中 后端判断请求头中有无token,有token,就拿到token并验证token是否过期,在这里过期会返回无效的token然后有个跳回登录页面重新登录并且清除本地用户的信息

posted @ 2022-03-16 16:47  爱喝可乐的靓仔  阅读(73)  评论(0编辑  收藏  举报