博主目前在蚂蚁集团-体验技术部,AntV/S2 是博主所在团队的开源项目——多维交叉分析表格,欢迎使用,感谢到 S2 github 仓库点赞 star,有任何关于前端面试、就业、技术问题都可给在文章后留言。
一面——腾讯云(2021/8/15)
一、实现数组的flat,例:[1,[2,3,[4]]]=>[1,2,3,4]
二、合并两个有序数组(leetcode no.88)
三、手写深拷贝
一面——企业微信(2021/8/19)
一、石油项目介绍
二、Canvas中绘图矩形框的坐标怎么获取的
三、字符串在内存中怎么存储的,增加字符串的长度,内存怎么变化的
四、vue的数据双向绑定原理
五、算法:回文数(leetcode no.9)不能将整数转化为字符串处理。
六、算法:二叉树中有根节点到叶子节点路径的和为某一值返回1,没有返回0。
一面——企业微信(2021/8/26)
一、三道题
- 写一个函数节流的实现
- 将一个打平的数据结构转成一棵树,比如:
let arr = [
{id: 1, name: '部门1', pid: 0},
{id: 2, name: '部门2', pid: 1},
{id: 3, name: '部门3', pid: 5},
{id: 4, name: '部门4', pid: 1},
{id: 5, name: '部门5', pid: 4},
]
转换后:
[
{
"id": 1,
"name": "部门1”,
"pid": 0,
"children”:
[
{
"id": 2,
"name": "部门2”,
"pid": 1,
"children": []
},
{
"id": 4,
"name": "部门4”,
"pid": 1,
"children": [{
"id": 5,
"name": "部门5”,
"pid": 1,
"children": [ ...... ]
}]
}
] }
]
- 给你一个整数数组 A,在不改变顺序的情况下将其划分为三个和相等的非空部分时才返回分割的位置下标,否则返回 false
[1,2,3,6,8,-1,-1]
结果:[2,3]
二、项目介绍,视频流的协议,视频流从编码、解码、分包。。。的流程
三、Canvas做一个白板(绘制矩形、圆、拖拽)怎么分层的,怎么分帧
四、webpack的工作流程,plugin怎么嵌入webpack的
五、vuex的数据流
六、跨站伪造请求的防范,怎么通过token验证身份的
一面——腾讯云(技术中台)2021/9/6
一、对JavaScript的理解
二、在浏览器中输入一个域名发生了什么
三、HTTPS为什么更安全
四、对前端框架的了解
五、虚拟DOM的作用
六、ES6的新特性
七、promise的应用场景
八、前端存在的安全问题及解决办法
九、几道easy的算法题
二面(2021/9/7)
常规八股
算法:
求二维数组(元素为int类型)内横向的所有平衡线,平衡线的意思是该线上面的所有数之和和下面的所有数之和相等
比如数组int a[][] = {{1,1,0},{1,2,1},{1,1,3},{3,2,1}};
1,1,0
1,2,1
1,1,3 —> 这就是一个平衡线
3,2,1
其中第3行就是一个平衡线,只需要打印出3(或者2,index从0开始)
注意需要找到所有的平衡线,语言不限,假设二维数组是a[m][n], 需要写出完整的代码