百度、腾讯、小米、知乎、比心、合合以及奇点云前端实习面试汇总
一直在准备面试,没有及时的记录面试题目只能大概回忆一些印象比较深的题目,给自己留个印象,也希望可以对大家有点帮助。
百度(前天刚面记得最多)
1.力扣11-盛最多水的容器
2.csrf攻击,xss攻击
3.浏览器渲染过程
4.怎么判断Array、Object和null对象
5.实现添加评论功能时,如果提交的内容是一些代码,会不会造成什么问题(想说v-html,以及csrf攻击和xss攻击)
6.
怎么实现图片中的圆,保证圆的颜色与背景颜色不维和(提示:渐变色+透明)
7.
(1)aa 123456 bb
(2)aa 12345678... bb
假设aa,bb给一定宽度,中间不到某个临界点就输出多少显示多少,超过之后用...代替
进阶:如果aa,bb不给定宽度怎么实现(提示:flex布局)
8.
给N个人编号
(1)镇长任何人都不信
(2)任何人都信镇长
(3)前面两个属性只有一个人是都有的(这条记得不是太清楚)
(4)trust=[1,2],表示1信任2
(5)找到镇长返回,不能确定或没有镇长则返回-1
其实逻辑很简单,考察图的双向,题目故意写的很复杂
9.怎么减少回流
10.讲讲cookie,localStorage,sessionStorage,说明其区别
11.cookie的安全性如何,怎么加密,对token的了解
12.new关键字的详细过程 腾讯
1.手写深拷贝
2.style写在最上面和最下面的区别 3.布局方式有哪些
4.为什么:key最好不要用index
5.宏任务微任务输出题(类似的,大家可以做着试试,注:then的执行时机,答案在评论区)
6.什么是事件委托,什么时候使用
小米
1.浅谈实现浅拷贝,以及实现浅拷贝思路
2.如果发送多个请求loading,防止提前取消怎么设置
3.forEach、map和for...of区别,着重说下for...of用途
4.多个请求,如何实现返回第一个成功请求 5.浏览器缓存
6.rem是什么,还知道什么单位,有什么意义
7.移动端的适配方案
8.说说定位有哪几种
知乎
1.手写防抖
2.反转链表
3.怎么判断一个属性在这个对象上
4.常用的git指令
5.什么是闭包,什么时候会产生闭包,造成什么问题
6.数据属性描述符和存储属性描述符是否可以共存
7.数组的去重方法
奇点云、合合、比心
1.路由的底层原理
2.移动端禁止缩放
3.flex:1是哪几个属性
4.transform和动画哪个性能更好
5.什么是长任务,造成什么问题,怎么解决
6.前端优化,怎么减少http发送
7.v-router的钩子,以及其顺序
8.说说Promise
9.interface和type区别
10.vue3有哪些API
11.vue中data为什么是函数
12.webpack怎么把语言转为机器语言
13.vue3的响应式、proxy是啥,reflect是啥
14.async和await
15.简述箭头函数
16.typeof和instanceof区别
17.使用过webpack吗,说说项目中用了哪些
18.有没有试过把setup写在script里的写法
19.怎么实现一个三角形
基本都会问到
1.什么是同源?什么是跨域?详细说明场景和解决方案。跨域发生在什么阶段
2.JS基本类型,简单类型和引用类型区别
3.v-if和v-show
4.盒子水平垂直居中
5.怎么隐藏元素
6.输入url到页面显示过程
7.数据双向绑定
8.TS中的as,returnType是什么
9.vue2和vue3区别
10.let和const区别
11.说说ES6特性
12.哪些数组方法是响应式的
13.组件间的通信方式
14.v-model原理(注:元素的v-mode以及组件的v-model)
15.回流和重绘
16.事件循环整个过程,宏任务微任务都有哪些
17.原型链
18.http状态码都有哪些,什么意义
19.说说数组有哪些方法
20.vue的生命周期
目前想到的就这些,先写这些了。