美团前端
5.10一面
1.自我介绍
2.项目深挖
3.TS的特点
4.事件冒泡和事件捕获的理解
5.vue2和vue3的区别
6.CSS样式优先级
7.position有哪些属性、区别
8.display:none和visibility:hidden的区别
9.元素不可见的方法还有哪些
10.说一下CSS盒模型
11.HTTP相关问题:建立流程、五层模型、三次握手、HTTPs
12.前端缓存-强缓存、协商缓存-两种HTTP Header
13.箭头函数的特点
14.apply、call、bind的区别
15.二叉树层序遍历
16.快速排序寻找第K大元素
4.14zj二面
1.自我介绍
2.js数据类型、Symbol
3.==和===区别
4.null和undefined区别、使用场景
5.作用域
6.变量提升
7.闭包
8.内存泄漏
9.ES6新特性
10.ES6如何兼容ES5
11.js捕获异常的方法
12.事件循环
13.state和props区别
14.路由
15.react底层原理
16.HTTP和HTTPs
17.手写摇奖程序
18.判断环形链表
4.7一面
1.自我介绍
2.为什么学前端
3.项目中的难点是什么
4.项目-monorepo的优点
5.由项目延伸到Vue3的生命周期
6.Vue3数据绑定原理、Proxy
7.TCP和UDP的区别及应用场景
8.HTTP缓存、浏览器缓存(三种的区别)
9.cookie的属性
10.箭头函数的特点->可以改变this指向吗->可以new吗
11.原型链->原型链是为了解决什么问题->如何实现继承
12.TypeScript的特点/比JS的优点
13.进程和线程的区别
14.数组扁平化(手写)
15.二叉树层序遍历(手写)
16.反问
4.6一面(刷题的小王-美团优选)
1.实现三栏布局,说出来几种方式
2.flex的知识
3.实现垂直居中,多种方式
4.游览器缓存
5.输入url到显示页面的过程
6.数组乱序(手写)
7.数组扁平化(手写)
8.爬楼梯(手写)
9.原型链的题目
10.函数传参
3.31yh一面
1.自我介绍
2.闭包
3.手写防抖
4.promise和setTimeout区别
5.async await promise等区别、宏任务微任务
6.promise应用题(并发控制)
7.环形链表
8.反问
3.30一面
1.自我介绍
2.项目、为什么想学前端、怎么学的前端
3.css如何实现居中
4.flex如何居中-align-items垂直居中/justify-content水平居中
5.原型链、作用域、this指向-深挖
6.深拷贝浅拷贝、数组复制值是否会变化
7.js数据类型-基本和引用的区别
8.宏任务、微任务、事件循环、Promise
9.反问
console.log(1); // 同步
setTimeout(function () {
// 异步
console.log(2);
process.nextTick(function () {
console.log(3);
});
new Promise(function (resolve) {
console.log(4);
resolve();
}).then(function () {
console.log(5);
});
});
process.nextTick(function () {
// 异步
console.log(6);
});
new Promise(function (resolve) {
// 同步
console.log(7);
resolve();
}).then(function () {
// 异步
console.log(8);
});
setTimeout(function () {
// 异步
console.log(9);
process.nextTick(function () {
console.log(10);
});
new Promise(function (resolve) {
console.log(11);
resolve();
}).then(function () {
console.log(12);
});
});
process.nextTick(function () {
// 异步
console.log(13);
});
new Promise(function (resolve) {
// 同步
console.log(14);
resolve();
}).then(function () {
console.log(15);
});
3.30(monody294)
一面
1.怎么学前端的(看书,文档
2.这本书中有什么你印象深刻的点(说了一本《你所不知道的javascript》
3.https如何解决http的问题(计网问题小林coding看懂记牢就好了
4.mysql依赖注入时如何防止恶意代码
5.vue2、vue3的区别
6.vite和webpack区别(没答好
7.CJS和ESM区别
二面
1.为什么选择前端(面试官对我的观点表示认可
2.怎么学前端的(看书,文档
3.这本书中有什么你印象深刻的点(同上
4.挖项目,问的比较深
5.场景题:简历有写使用koa框架,让我手写洋葱模型
异步并发控制M个任务每次执行N个,尽可能快的执行完(利用await配合Promise对超出任务进行阻塞,前面执行完了之后区调用promise的resolve达到目的)面试官说我这种方法写的很优雅。
3.23一面(海绵嗝嗝)
1.自我介绍
2.怎么学前端的,学校的课程(面试官看我紧张说先聊下天放松下呜呜呜)
3.css有哪些布局
4.怎么实现左右两边浮动,中间自适应
5.盒子模型(标准、怪异)
6.怎么清除浮动
7.常用html标签
8.作用域,this
9.闭包原理,优点,缺点
10.内存泄漏,浏览器的垃圾回收机制
11.宏任务,微任务,事件循环,Promise(出了一个题,答错了,但是面试官一直引导,还给我解释)
12.js数据类型
13.数组常用的方法(出了一个题,filter和map的,脑袋宕机忘记map了面试官和我说没关系)
14.vue常用指令(我没答全,他还安慰我差不多是这样了,没关系)
15.问了一点项目
16.手写快速排序
17.反问公司业务+学习建议
18.约我二面,问我什么时候有空啊啊啊啊,我差点直接卧槽出来,憋住了
3.20一面(pan-jy)
1.vue2和vue3的区别
2.vue怎么实现treeshaking
3.vue的treeshaking和webpack的有啥区别
4.webpack怎么实现在每个文件末尾加一些内容
5.webpack的事件流机制
6.v-if和v-show的区别
7.vue生命周期
8.兄弟组件通信
9.vuex关键节点
10.action和mutation的区别
11.为什么要用Proxy
12.defineProperty怎么手动设置监听属性增加
13.Reflect和Proxy的联系
14.mixin的作用
15.mixin的底层原理
16.对react有什么了解,有什么学习上的方向
17.数组去重的方法
18.跨域则么解决
19.CORS的副作用
20.输入网址到显示页面的全过程
21.回流和重绘
22.http缓存
23.怎么设置强缓存
24.协商缓存怎么设置
25.etag是怎么生成的
26.http1.1和http2.0的区别
27.dom树和cssom树的生成,顺序是怎样的
28.flex布局
29.position: stick的使用
31.移动端怎么做响应式的
32.移动端遇到的兼容问题有哪些——IOS顶安全距离怎么兼容,css怎么解决,js怎么解决
33.怎么解决两倍屏和三倍屏文字大小不一致的问题,webpack怎么解决
34.开发过程中有没有遇到过比较困难的兼容性问题——IOS滚动卡顿问题
35.Promise的使用
手写Promise.then()
反问
3.21二面(pan-jy)
1.学前端多久了
2.平时怎么学的
3.有系统学习前端知识吗,用什么方式
4.看过书吗
5.最近主要在学什么
6.最近学习过程中印象比较深的点
7.为什么印象比较深
8.vue响应式,vue2、vue3
9.vue3响应式的优点
10.不断改变数据直到视图更新的过程
11.异步更新队列的实现
12.nexttick原理
13.哪些情况下会触发vue组件的渲染
14.vue3对比vue2页面更新的优化
15.vue3兼容性问题怎么解决
16.babel转es5会遇到什么问题
17.Promise使用场景,解决什么问题
18.有哪些API
19.什么情况下会进入catch
20.有用过ts吗
21.Promise怎么结合ts使用
22.ts中为什么使用泛型可以限定类型
23.async和await
24.await后面一般接什么
25.使用await处理多个异步任务时怎么并
26.css3用的深不深
27.flex布局
28.原型链
29.前端安全,怎么避免csrf,最有效的方法是什么?
30.有没有实践过前端安全
31.项目授权怎么封装的,详细过程,授权过期后怎么处理
32.token是存在哪里的,存在cookie和localstorage有什么区别,为什么不存在cookie
33.强缓存和协商缓存分别是什么,请求的过程是怎样的
34.怎么设置强缓存或协商缓存
35.no-store和no-cache和max-age=0这几个有什么区别
36.使用vue3实现一个弹窗组件,顺着这个聊了一些实现的细节,teleport、v-if&v-show、props、emit、slot、水平垂直居中的方法有哪些、怎么通过函数控制组件、单例模式(一个页面上只能有一个弹窗)
37.手写deepclone
反问
3.27(萧小小233)
1.自我介绍
2.前端是不是自学的,还学过其他什么计算机课程
3.vue2有什么特性,对比原生js有什么优点(我说了开发友好、MVVM、虚拟DOM之类的,后端的MVVM)
4.vue的其他方面优化,给我举了一个例子,比如说频繁更新数据,会不会立刻更新视图?(我所知道的是浏览器的渲染队列,不知道vue在这方面是怎么优化的)
5.回流和重绘的区别,怎样避免,只有回流没有重绘
6.引申到display:none和visibility:hidden的区别,以及它们的适用场景
7.问实习项目上线解决了什么bug
8.了解了一下项目的业务方面,还问到具体怎么实现,数据源之类的
9.登录如何实现?提到用户鉴权方面的具体实现,每一次调用的时候都会再传递给后端吗?
10.pdf批注,业务层面是什么样的实现逻辑
11.文件导出,提到请求头有哪些,对应什么数据类型,然后还问一开始渲染的时候,浏览器所发送的获取前端项目资源的包应该是什么类型的请求呢?(我一开始没理解他的意思,以为他在说服务端渲染之类的东西,他说下去可以再了解一下,与接口调用不同)
12.护眼模式,如何实现,提到全局状态的管理,我说还使用过vuex、localStorage的封装等等,很多组件应该怎么管理?现在想起来vue里有eventBus
13.问到localStorage和其他前端缓存的区别,cookie如何存放得更安全一些不被js获取到?
14.路由拦截和懒加载,性能优化的方式?我主要提了加载方面的东西,他问到了接口请求这一方面,结合http2的多路复用,如果同时有很多很多的请求,应该怎么去优化?(没答出来)对于多路复用的理解也不记得了,说的不太好。
15.跨域问题,有什么解决方案?提到CORS的原理
16.之前做的一个过时登录功能,问如何实现
17.js数据类型,引用类型还是基本类型等等
18.判断数据类型的方式
19.ES6的新特性
20.Promise的含义等等,还有其他的异步请求方案吗?async/await与promise的区别
21.写了一个-连字符转驼峰,正则还得再去看一下
22.反问
snowy