当前位置: 首页 > Web前端 > CSS

【Weekly-3】三年大厂面试官-十道前端面试题(欢迎挑战)

时间:2023-03-30 22:27:37 CSS

前言我在两家大厂工作了6年,做了3年前端面试官年。问题和答案总结在我的Github中。希望对大家有所帮助,帮助大家进入理想的公司。项目地址为:https://github.com/airuikun/W...希望大家不要看到问题就直接看答案,还是希望自己先思考一下。在思考的过程中,会有意想不到的收获。面试问题要求我写下以下每个问题的难度级别和相应的排名。可以参考,但不是判断的唯一标准。问题一:请设计攻击服务器的策略难度:阿里p5~p7,腾讯t21~t31我提供几个常用的策略。前段时间很火的一个例子就是fakenpmpackage+nodejsversionpayloadnodejs的逆序,其实如果你多关注知乎或者一些前端热点,你会发现这样的案例解释很多攻击和漏洞,但有没有什么策略和想法是很难的,没有人想到的?欢迎展现你的实力和创意。如果大家有好的想法或者答案,请在本题对应的github下留言:https://github.com/airuikun/W...问题2:请写正则,去掉html中的所有属性tag字符串,并保留src和href属性难度:阿里p6+~p7,腾讯t23~t31本题简单理解就是写一个正则表达式,将字符串'regular'转为'Regular'。当然,真正包含网页html的字符串要比这复杂的多。而且这个问题google前三篇的答案都有严重问题,随便写几个case是不行的。对于正则性的问题,很多前端人员卡在如何用正则来判断一个数字是手机号还是字符串是不是邮箱。说实话,这还用不到某些工程项目中规律性知识体系的十分之一。事实上,如果正则用的到位,一行正则抵得上1000行代码。推荐有能力的小伙伴可以玩一下这道题。如果大家有好的答案或者想法,欢迎在本主题对应的github下留言:https://github.com/airuikun/W...问题3:在react项目中的JSX中,onChange={this.func为什么.bind(this)}的写法比non-bind的写法效率高func=()=>{}请解释一下原理的难点:阿里p5~p6,腾讯t21~t22这道题考察函数在内存块中的占用执行和调度等,对bind有深刻的理解。欢迎挑战。如果大家有好的想法或者答案,欢迎在本题对应的github下留言:https://github.com/airuikun/W...问题四:向数据库中插入10万条数据,如何优化And高并发下DB插入难度处理:阿里p6+~p7+,腾讯t23~t32题,你懂的,高大上,眼睛亮,大公司太爱考了。不过,装逼装逼,有本事并且真的处理过这些高并发情况的FE,这道题倒是个大展身手的好机会。以前我导师用nodejs实现高并发智能容灾。我还历历在目,那一年他也取得了很高的成绩。来玩?欢迎挑战。如果大家有好的想法或者答案,请在本题对应的github下留言:https://github.com/airuikun/W...问题5:解释为什么0.1+0.2在js中等于0.300000000000000004,如何通过代码解决这个问题?难度:阿里p5~p6,腾讯t21~t22第二题,给大家简单的思路:将浮点数转为整数进行计算。答案不是唯一的,欢迎提供更好的想法,欢迎挑战,如果你有好的想法或者答案,请在本题对应的github下留言:https://github.com/airuikun/W...问题6:设计一个https前端项目实现http请求难的策略和方法:阿里p6~p6+,腾讯p22~t23欢迎挑战,有好的想法或者答案欢迎在github下留言对应本题:https://github.com/airuikun/W...问题7:一个iframe,内嵌了一个页面A,iframe的宽高一直在变化,如何让页面A实时适配iframe的宽高。请至少说出3种方法,越难越好。难度:阿里巴巴p6~p6+,腾讯t22~t23有简单的方法也有难的方法。我建议你在面试时尽量让它变得困难。欢迎挑战。如果大家有好的想法或者答案,请在本主题对应的github下留言:https://github.com/airuikun/W...问题8:听说过v8吗?说说v8的模块和部分,比如讲解v8的隐藏类难度:阿里p6+~p7,腾讯t23~t31不要抗拒面试官对v8的考察,还是一样的句子,你的回答深度一道题,是面试官评价你能力的参考和标准。让我们挑战一下。欢迎挑战。如果大家有好的想法或者答案,欢迎在本主题对应的github下留言:https://github.com/airuikun/W...问题9:现在有多个spas项目,包括angular,vue,react。如何合并成一个统一的spa项目难度:阿里巴巴p7~p7+,腾讯t31~t32很多公司有很多老项目,而且都是不同的框架,很分散,很多上级喜欢提这种多项目统一要求。这时候你将面临使用不同框架的项目重构。如果遇到这些问题打算重写项目,那就很吃力了。这些问题其实都可以在框架层面解决。我提供一个思路,比如在angular项目中集成react项目,可以从ReactDOM.render结合angular路由入手。提供另外一种思路,比如简单的vue和react项目,可以使用ast等方式互相传递代码。但是我以前实践过这个,我会面对很多糟糕的情况。剩下的思路,欢迎大家挑战。欢迎在本题对应的github下留言:https://github.com/airuikun/W...问题10:说说png8png16png32的区别,简单说说png压缩原理的难点:阿里p5~p6,腾讯t21~t22针对png原理的问题,写了一篇文章,轻松搞笑,通俗易懂。您可以阅读它,放松和放松《PNG图片压缩原理--屌丝的眼泪》交流。我是一只小蝌蚪,我是一名资深前端工程师。,微信扫描下方二维码或搜索公众号“前端屌丝”,讲述一个前端屌丝逆袭的心路历程,互相鼓励。