面试题记录


前言

记录面试所遇到的问题,其中放了很多人的帖子,持续更新。

js篇

一、let、const、var的区别

1、var存在变量提升,const和let没有。因为js有预编译的的功能,所以var 可以在声明的上面访问变量,而 let 和const有暂时性死区,在声明的上面访问变量会报错。
2、作用域的限制,var不受作用域的限制,而let和const收到当前作用域的限制
3、重复声明:var可以重复声明,而let和const不可以
4、const声明得是一个常量并一定要有初始值,并且不能更改,但是可以更改对象或者数组的内部属性值。

二、跨域

跨域的原因:
跨域是是因为浏览器的同源策略限制,是浏览器的一种安全机制,服务端之间是不存在跨域的。
所谓同源指的是两个页面具有相同的协议、主机和端口,三者有任一不相同即会产生跨域。

解决跨域的方式:
1、jsonp,只支持get,不支持post。
2、跨域资源共享cors解决跨域。
3、nginx/apache/webpack中做相应配置。

相关视频:https://www.bilibili.com/video/BV1Ei4y1o7jK?spm_id_from=333.337.search-card.all.click

三、闭包

闭包
相关视频:https://www.bilibili.com/video/BV1iE411q7Qd/?spm_id_from=333.788

四、storage 和vuex 的区别。

区别

五、HTML、CSS、JS

1、浏览器页面渲染流程,说完后会问到重排重绘区别
2、CSS动画,transform与animate的区别等
3、上下居中、flex、栅格化、定位、BFC及应用、主题切换
4、深浅拷贝、promise、防抖节流、es6新特性、事件循环、websocket长链接、闭包、数据存储、es6数组新方法 等这些都是目前js的基本问题,一般公司都会拿出来几个
5、还有一些更简单的比如基本数据类型,let const var区别(或者说变量提升),改变this指针,跨域,作用域等等

六、VUE相关

1、vue2与vue3区别以及vue3的组合式api好处
2、v2/v3生命周期、watch与computed区别、slot插槽、v2/v3的vif与vfor优先级区别、nextTick
3、权限控制 ---- 这问题很多,一般都是问按钮权限的控制,我一般都是答全局指令
4、axios封装、用过的ui组件,用过的echarts图表等
5、v2/v3 diff算法、v2/v3 双向绑定原理、动态添加路由(addRoute,也是和权限相关一起问)
6、组件通信 — 基本必问
7、性能优化 — 必问,我一般会各方面回答,cdn、懒加载、各类loader压缩、gzip压缩、ssr等等
8、xxs攻击以及预防,这个问题到目前我还没找到一个完美的答案,网上有的也是各讲各的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

言只 石皮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值