前端面试题整理6

目录

1.websocket的优缺点?

2.webpack的打包流程?

3.es6新特性有那些?

4.v-model底层原理?

5.var,let,const区别?

6.v-for的key为什么不推荐index?

7.axios和原生ajax的区别?

8.自动化构建工具,vite优势?

9.一般在请求拦截器中做什么?

10.动态路由解析流程?

11.什么是原型链?

12.React-Router的实现原理是什么?

13.Git常用命令有哪些?

14.什么是同源?

15Javascript 变量生命周期?

16.Vuex异步的action如何操作?

17.history模式刷新页面会怎么样,怎么解决?

18.使用js封装函数获取当前地址参数?

19.tranform:tranlateX的50%和定位里left的50%的区别?

20.怎么画0.5px的线?


1.websocket的优缺点?

WebSocket是一种在Web浏览器和服务器之间建立实时、双向通信的技术。

优点:①实时性:WebSocket能够在客户端和服务器之间建立一个持久化的连接,可以实现实时的双向通信。

②减少网络拥塞:相比传统的HTTP请求-响应模式,WebSocket可以减少网络拥塞,降低网络延迟。

③同域请求:WebSocket协议是从浏览器发起请求,所以不会受到同源策略的限制。

④简单易用:WebSocket API简单透明,易于开发,支持各种浏览器。

缺点:①不适用于所有应用:WebSocket主要适用于需要实时、双向通信的应用,如果不需要实时性,使用WebSocket并不会有太多优势。

②对服务器压力大:由于WebSocket的持久连接会占用服务器资源,如果服务端的并发连接数过多,会导致服务器压力大。

③安全问题:由于WebSocket的双向通信,可能会存在安全风险和攻击威胁,需要加强安全措施。

2.webpack的打包流程?

①解析入口文件:Webpack会通过配置文件中的入口文件(entry)来开始解析整个应用程序,分析出应用所需的所有模块。

②模块加载:Webpack会根据模块间的依赖关系,将各个模块依次加载到内存中。在加载模块时,Webpack会根据配置文件中的各种规则(比如文件类型、特定的loader等)来进行模块的解析、转换。

③依赖图谱:每个模块加载完成后,Webpack会对模块间的依赖关系建立图谱。这个过程称之为依赖图谱的生成。 

④代码转换:Webpack会根据配置文件中的各种规则(比如特定的loader等)对各个模块进行代码转换,使得代码符合最终打包结果的要求(如转换为ES5、压缩等)。

⑤模块打包:当所有模块加载、转换完成后,Webpack会将它们打包成一个静态资源,如JS、CSS、图片等。在打包时,Webpack还会对资源进行处理、优化。

⑥ 输出打包结果:Webpack将打包好的资源输出到指定的目录中,供应用程序使用。 

3.es6新特性有那些?

包括变量声明let和const,Symbol,解构赋值,展开运算符...,新增Set和Map对象,箭头函数、模板字符串等。

4.v-model底层原理?

v-model的底层原理是通过绑定input事件和更新数据的方式实现的。当用户在输入框中输入内容时,会触发input事件,Vue会监听这个事件,并将输入框中的值更新到Vue实例中的数据中。反之,当Vue实例中的数据发生变化时,会触发setter方法,setter方法会将新的值赋给输入框的value属性,从而更新输入框中的值。

在底层实现中,Vue会根据不同的表单元素类型(如input、select、radio等)使用不同的事件和属性来实现双向绑定。对于不同的表单元素类型,Vue会使用不同的“value”属性或“checked”属性来更新对应的值。

总之,v-model的底层原理就是通过监听用户输入事件和更新数据的方式实现数据的双向绑定。

5.var,let,const区别?

①变量提升:var存在变量提升,let和const不存在变量提升,必须在声明后才能使用。

②块级作用域:var声明的变量不存在块级作用域,而 let 和 const 声明的变量是块级作用域。

③初始值设置:var和let可以不用设置初始值,const必须设置初始值。

④修改声明的变量:var和let允许修改,const声明的是常量,不允许被修改。

⑤重复声明:在同一个作用域内࿰

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值