大家好,我是刘布斯。
今天给大家分享一篇最新的面经,作者是一位有着 5 年前端开发经验的工程师,面试的也是一些大厂,相信能对找工作的同学有所启发。
以下是原文:
每一家的面试风格都不一样,但基本上除了开放问题都不会脱离简历。
基本功
建议大家一定要把简历上所有提到的技术(或者实现的功能用到的技术)都能知道:
为啥用它(技术选型)
它的怎么做的(原理)
怎么用它更好(优化)
钉钉小红书1688蚂蚁字节项目
就不分开写了,很多重复。主要概括为几个方面吧:
每个公司侧重点不一样,有的是通过解决思路看你这人、有的是通过做的过程看你的技术深度、有的是看项目本身牛不牛
如果你刚好是有大型的项目,遇到了性能瓶颈,有一个完整成熟的解决,优化后数据指标亮眼。那就成了!
开放问题
一般必问的是:
还有一些会根据经历不同去天马行空的聊天一下,比如我做 3d 项目(纯纪念,没参考价值)
笔试
我遇到的都是简单题目,感觉刷一下 leetcode 经典题目和前端题目就够用了,但可能是因为我年前面的面试官知道我没空刷题所以简单
钉钉小红书
//写一个group函数可以对数组进行分类,接收一个函数作为参数,返回一个对象.
//调用如下
array = [0,1,2,3,4]
ruleFn = (item,index,array)=>{
return item%2==0?"odd":"even"
}
array.group(ruleFn)
//结果如下
{odd:[1,3],even:[0,2,4]}
// 判断括号是否闭合
“{}[]” 、“([])”、“{}[](【】)”这几种都是闭合的,其他不算闭合
//计算乘积除以当前项
//传参 [1,2,3,4]
//输出 [24,12,8,6]
蚂蚁
节流防抖:比如 10 秒连续输入,每 2 秒响应一次
//数组拍平 flatternArray(arr,count)
flatternArray([1, 2, 3, [4, 5]], 1); //[1,2,3,4,5]
flatternArray([1, 2, 3, [4, [5]]], 1); //[1,2,3,4,[5]]
//实现 lastPromise,连续请求只有最后一次输出
let lastFn = lastPromise(promiseFn); //promiseFn 是一个普通的异步函数,返回一个 Promise
lastFn().then(); //无输出
lastFn().then(); //无输出
lastFn().then(); //有输出
字节
var obj = { a: { b: { c: 2 } } };
console.log(get(obj, "a.b.c")); // 输出 2
fn([1, 2, 3, 4, 5], 2); //结果为[[1,2],[3,4],[5]]
//二叉树的右视图
体验钉钉小红书
一面印象很深刻有好几个点,面评很好,面试官也很nice。刚面完就约二面了。
1688
给自己总结四个字:一路顺风。
给1688整体流程五星好评。
蚂蚁字节心路历程
面试挺让人成长的,不论是基本功还是项目,而且也更知道市场需要什么人了。
自己还是幸运的,没想到在这个互联网寒冬能够面试还挺顺利的。虽然自己是被广进计划了,但反而更自信了。
结果也满意。回顾一下,整体是大调和弦,当然也有一个小遗憾和一些小不爽。
最后
还没有使用过我们刷题网站()或者刷题小程序的同学,如果近期准备或者正在找工作,千万不要错过,题库主打无广告和更新快哦~。
老规矩,也给我们团队的辅导服务打个广告。
暂无评论内容