Skip to content
On this page

1、 websocket心跳机制,断线重连机制。 心跳重连机制:前端在WS连接成功的情况下,开始执行心跳函数,首先向服务器端发送‘ping'信息,服务器内若收到信息则会返回'pong'信息。在一定时间内,前端收到服务器返回的信息,则表示此连接是正常的,便重置心跳函数;若前端在一定时间内没有收到心跳函数,则表明没有连接成功,此时前端关闭ws,再执行重连操作。

2、 是否有封装过组件,组件二次封装,例如基于elementui,封装过哪些组件。 回答:有,封装echarts图表组件,经常用到组件复用中,只需要传入option数据就可以渲染符合业务的图标,基于elementui主要封装后台的组件,具体看业务要求。 3、 登录无感认证(token无感刷新)要怎么实现,在什么地方部署。 回答:Token设置短期过期时间例如几个小时,同时用户认证后后台返回refresh_token有效期一两个月,如果token过期那么就通过refresh_token认证,成功则返回新的token保存在本地。可以在beforeach全局前置守卫和单独组件路由beforenter中设置。 4、 Echarts有做过三维模型吗?怎么实现。 回答:使用webGL、theerjs 5、 Echarts联动怎么解决。 回答:图表联动可以通过connect api解决,如果是实现多屏互动,可以使用websokect,约定指令格式下发指令给其他终端,其他终端通过api模拟用户行为指令实现同步联动 6、 Vue中如何获取dom数据 回答:可以使用ref或者原生的js dom api获取 7、 讲下vuex的几个属性。 回答:state、getter、mutation、action、module

8、 算法题:[{age:18,hight:170,sos:ture}] 按sos优先级最高ture永远排在最前,最后age按大小排序。 好好看看数组的基础知识- 这都是基础!!!!!!!!!!!! 数组排序sort()。升序还是降序 类似这样: function sortNum(a,b){ return a.sos && a.age-b.age;//升序。b-a是降序 } var myarr = [{age:18,hight:170,sos:ture}] myarr.sort(sortNum);//升序100,80,50,16,6,1 9、 公司的代码规范是怎么做的。 可以参考这个 https://juejin.cn/post/6963549273346539527 10、 代码的设计模式是用什么?if else大量使用怎么优化。 代码的设计模式的作用吧? 为了代码可重用性、增加可维护性,让代码更容易被他人理解、保证代码可靠性。设计模式使代码编写真正工程化。 优化if-else代码的八种方案!

  1. 优化方案一:提前return,去除不必要的else.
  2. 优化方案二:使用条件三目运算符
  3. 优化方案三:使用枚举
  4. 优化方案四:合并条件表达式
  5. 优化方案五:使用Optional.
  6. 优化方案六:表驱动法
  7. 优化方案七:优化逻辑结构,让正常流程走主干
  8. 优化方案八:策略模式+工厂方法消除if else. 下面的文章好好看看 https://codeantenna.com/a/vlKqYJyTve 11、 .描述一下浏览器发送请求的过程。 其实就是问你 在浏览器输入一个url的整个过程 https://blog.csdn.net/u013243347/article/details/83270789 12、 1js单线程你是如何理解的。 看这篇文章:https://zhuanlan.zhihu.com/p/265349066 13、 回顾你以往的经历,说下你觉得现在来做能做的更好的 结合你自己的情况说: 技术的成长:,能够自己独立从0到1负责起来项目 自己做技术调研,解决项目中遇到的技术难点 热爱技术: 喜欢钻研,写技术blog什么的 14、 你都封装过那些组件,实现了什么功能。 el-talbe组件 结合自己项目的功能去说 我记得咱们沟通的时候我给你提过 15、 地图加载过程中你有遇到性能问题吗?怎么解决的。 其实就是考察你前端性能优化 那个面试里面有性能优化篇的 也可以看看这个:https://juejin.cn/post/6844903607985258510

Released under the MIT License.