美团 10.14 一面 (1h)

自我介绍

JavaScript基础

== 和 === 什么区别

判断:
[] == 0
false == “false”

答案:√×

如何判断一个变量是不是数组

.isArray()

let、const、var区别

块级作用域
变量提升
作用域死区

Promise

与async、await的关系

promise 是 aysnc/await 的语法糖

Promise.all

用Promise.All,有三个API,中间那个挂了,超时了

立即失败,Promise.all 立刻进入 rejected 状态,往后的请求不发

了解微任务和宏任务吗

场景

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function test() {
setTimeout(function() {
console.log(1)
},[])
new Promise(resolve => {
console.log(2)
resolve()
console.log(3)
throw new Error
}).then(function() {
console.log(4)
}).catch(reject => {
console.log(5)
})
console.log(6)
}

23641

前端的本地存储

父子组件onMouted执行顺序

先子后父

v-if和v-show区别以及应用场景 太久没做业务忘记了

都来控制元素显隐
v-if 条件渲染 存在性能开销 反复创建/销毁 编译成三元表达式 经常变化
v-show CSS控制 元素始终渲染 只切换CSS 编译成v-bind绑定display样式 频繁切换

懒加载/复杂表单
开关/标签页切换

单行文本溢出省略怎么实现?属性名忘记了

white-space: nowrap; // 阻止文本换行
text-overflow: ellipsis; // 文本溢出容器省略号
overflow: hidden; // 隐藏溢出的文本

垂直居中、平行居中

网络请求中的get和post的区别

post更安全,获取的数据量更大

项目

全是静态项目吗,有没有连过接口

Vue源码做了什么

monorepo的优势、弊端

还有了解前端别的架构吗

为什么想着写组件库

webpack和Vite的区别

最主要是打包的区别

git stash命令

测试覆盖率,自己做单测吗

算法

二叉树的层序遍历

反问

表现:整体表现不错,说是看着码字快平时应该是有多写代码,还说实践的项目和博客都挺好的
改进:基础知识可以再加强巩固