面试分享:一年半前台跳槽面试经验(头条、微信、shopee)

作者 : 开心源码 本文共1868个字,预计阅读时间需要5分钟 发布时间: 2022-05-13 共233人阅读

web前台学习教程的小伙伴们可以增加QQ群:282549184大家可以互相学习 提升自己

在2020年的时候,忽然想搞点大事,思来想去,感觉只有跳槽是最刺激的。

因为我比较懒,不想换城市,所以这次只面试了头条、微信和 shopee。十分幸运,都拿到了 offer。接下来就简单的说下大家关心的面试题吧。问题的答案的话,之后有空我再补一下吧。

因为我之前的公司是有专门的重构工程师写 css 样式的,所以当面试官开始问 css 的时候,我都会跟面试官说我对 css 可能不是很熟,讲明起因。

写在最前:需要前台学习资料的伙伴可以私信我,发送“前台”等3秒后即可以获取领取地址,免费送给大家。

头条

一面

position 有哪些属性

position: sticky 用过没,有啥效果

typeof 的原理,与 instanceOf 、 Object.toString.call() 的区别

react 有哪些生命周期函数,分别讲下每个生命周期函数会在哪个时候被执行。

react 哪些生命周期可以 setState

提供一个 VDOM 对象,写一个 render 函数来让他变成一颗 DOM 树。(比方大概长这样) { type: ‘h1’, props: { className: “”, style: “”, }, children: [] // 嵌套节点 }

来都来了,简单写一个快排吧。

二面

0.1 + 0.2 === 0.3 吗?为什么?(计算机的底层都是由二进制来表示的,对于 0.1和 0.2 这种数字在用二进制储存的时候会有精度误差)

实现一个算法,来完成字符串相加,比方 “111” + ”2222“ = ”2333“。(高精度算法)

问我最近对什么技术感兴趣,说来听听。(这里聊了好久,至少有半个小时) 跟面试官聊了挺多。主要有

react 为什么是平台无关的框架,如何实现的。(依赖注入)

PWA

WASM

v8引擎 如何执行 js 代码(这一块我不熟,我就简单聊了编译原理,代码的编译过程)

AST 以及 AST 有啥应用 (babel/ Tree-shaking 以及之前有人用 AST 来实现 微信小程序动态执行代码)

img 标签间距问题的原理以及如何处理

深度拷贝

头条三面和四面都是后端大佬面试我,所以基本没问前台的知识

三面

DNS 查询的过程,分为哪两种,是怎样一个过程(分为 DNS 递归查询和迭代查询,具体有什么区别可以查查)

假如你发现有个网站你忽然打不开了,有哪些可能。(发挥想象,断网啊,DNS 解析出现问题,代理商服务器出现问题,流量被劫持了等等)

有一个”123456789101112131415….n+1″相似这样的序列,求出第m位的数字 m=11的话,那么答案是0 m=12的话,答案是1

有一个有序递增序列,求有多少个不同的数字。比方 [1, 5, 7, 7, 8, 9, 9]。里面总共有5个不同的数字:1, 5, 7, 8, 9

聊聊人生聊聊未来

四面

红黑树和哈希表的比照

哈希表如何处理冲突

线程和进程的区别

场景:有一个应用会经常创立、删除节点对象,如何优化。(节点池)

shopee

一面

react 中写类组件的时候,如何处理方法 this 丢失问题

在 constructor 里使用 bind

箭头函数

使用 bind 和箭头函数的区别

react 生命周期中,在新版本有些将被废弃,也新添加了少量生命周期,讲一下?

setState 是异步还是同步

VDOM 渲染原理

实现一个方法,将传入对象的下划线命名方式一律换为驼峰式(考虑递归的场景)。比方 // before const obj = { first_name: ‘chen’ } // after const obj = { firstName: ‘chen’ }

二面

es6的模块管理 与 commonjs 的比照

es6 Decorator

es6+ 新特性

聊项目

Base64 的原理?编码后比编码前是大了还是小了。

非递归实现树的后序遍历。(这个比较有意思,大家可以试下)

微信

微信其实大部分都是在聊项目,以及问项目相关的东西。一面前会先给个笔试题,做完后才开始面试。

一面

这道题最难。。我使用了回溯法来做,不过不是正确答案,尽管恰好把测试用例都过了。

setTimeout 的原理

聊项目

二面

二面的时候是晚上10点多。。我都没想到会这个时间点打电话来面试,我当时正在开开心心的打游戏呢!

前面基本都是在聊项目

react 和 vue 的区别

SPA渲染的优缺点

对前台框架的看法(只是处理问题的工具,并不拘泥于具体的框架)

应该还有少量问题,不过太久,当时也太紧张了,忘记了。

三面

理解微信小程序的底层实现吗(这里其实可以参考下微信的官网,之前做了个汇总,可以看下)

聊项目

最近比较关心的技术

总结

每一个面试环节,都必不可少的有以下环节

自我详情

聊项目

面试题

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 面试分享:一年半前台跳槽面试经验(头条、微信、shopee)

发表回复