大家好,我是若川,祝大家中秋节快乐。最近组织了源码共读活动《1个月,200+人,一起读了4周源码》,已经有超50+人提交了笔记,群里已经有超1200人,感兴趣的可以点此链接扫码加我微信 ruochuan12 参与。
本文经作者@lxcan 授权转载,未经授权请勿直接转载。
原文标题:《三年经验前端社招——有赞》
原文链接:https://zhuanlan.zhihu.com/p/405798802
文末点击阅读原文直达
前言
本人毕业学校是双非二本,非计算机科班出身,大学时自学的前端相关技能。截止2021年8月,有3年前端开发经验,技术栈为 vue 全家桶,求职意向城市是深圳。想着找一个更大的平台寻求发展(技术沉淀、涨薪),所以出来接受社会的毒打了。。。
本文的目的是记录自己的面试经历,各位路过的兄dei也可以参考一下,也让自己有个回顾和反思。路漫漫其修远兮,吾将上下而求索
下面的题目,都会标明每一题的性质,部分题目也会给出一些参考思路和参考回答,希望各位大佬不吝赐教~
- 描述:对概念、过程的描述,纯理论性问答题为主 
- 举例:说出应用场景,或者是自己团队实践的情况 
- 伪代码:写代码,但不需要跑起来,甚至可以随便写伪代码,主要目的是描述思路 
- 编程:真正的写代码,需要跑起来,有测试用例,要看到效果 
HR面的话,是一些日常、项目回顾(少说技术细节)、职业规划、你的优势和缺点、为什么跑路、为什么选择这边、目前薪资和职级、期望薪资,HR面基本离不开这些问题。
一面
1、实际开发中用过什么设计模式【描述】
- 发布-订阅模式,实现 EventEmit 跨组件通信 
- 观察者模式,实现 history 路由变化监听 单例模式 2、ES6 都有哪些新增的特性【举例】 
3、ES6 对象新增了哪些特性【举例】
- 简洁表示法 
- 属性表达式 
- Object.is() 
- Object.assign() 
- Object.entries() 
4、Set 和 Map 在实际业务中有哪些应用【举例】 Set 常用于数组去重,当某个对象的key为非字符串类型时会使用 Map
5、箭头函数和普通函数的区别?【描述】
- 箭头函数没有 prototype(原型),所以箭头函数本身没有 this 
- 箭头函数的 this 在定义的时候继承自外层第一个普通函数的 this 
- 如果箭头函数外层没有普通函数,严格模式和非严格模式下它的 this 都会指向 window(全局对象) 
- 箭头函数本身的 this 指向不能改变,但可以修改它要继承的对象的 this 
- 箭头函数的 this 指向全局,使用 arguments 会报未声明的错误 
- 箭头函数的 this 指向普通函数时,它的 argumens 继承于该普通函数 
- 使用 new 调用箭头函数会报错,因为箭头函数没有 constructor 
- 箭头函数不支持 new.target 
- 箭头函数不支持重命名函数参数,普通函数的函数参数支持重命名 
- 箭头函数相对于普通函数语法更简洁优雅 
6、为什么构造函数一般用普通函数而不用箭头函数来定义【描述】 使用 new 调用箭头函数会报错,因为箭头函数没有 constructor 箭头函数也没有 prototype
7、call apply 可以改变箭头函数的指向吗【描述】 不能。箭头函数不会改变 this 的指向。this始终指向沿着作用域往上找的第一个 function ,看这个 function 最终是怎样调用的
8、ES6 中 class 的原理【描述】
- (1)Class 在语法上更加贴合面向对象的写法 
- (2)Class 实现继承更加易读、易理解 
- (3)更易于写 Java 等后端语言的使用 
- (4)本质还是语法糖,使用 prototype 来实现 
9、讲一下原型【描述】
10、哪些是原始类型数据,哪些是引用类型数据,两者不同点【描述】
11、判断数据类型有哪些方法?【举例】
12、为什么 typeof 判断数据类型不精确【描述】
13、说下 instanceof 原理【描述】
14、for in、Object.keys、Object.getOwnPropertyNames 不同点【描述】
- for in 主要用于遍历对象的可枚举属性,包括自有属性、继承自原型的属性 
- Object.keys 返回一个数组,元素均为对象自有的可枚举属性 
- Object.getOwnPropertyNames 用于返回对象的自有属性,包括可枚举和不可枚举的 15、css position 都有哪些属性值【描述】 static, relative, absolute, fixed, sticky 注意:sticky 粘性定位要理解到位 
16、什么是跨域?什么是同源策略【描述】
17、有什么办法解决跨域【描述】
18、讲一下 https 的请求过程【描述】
19、讲讲3次握手和4次挥手的具体过程,syn ack seq 是什么含义【描述】
20、为什么需要3次握手和4次挥手,3次挥手不行吗【描述】
21、你有什么想问的吗【描述】
最后
有赞是一个商家服务公司,致力于成为商家服务领域里最被信任的引领者。有赞在深圳的业务主要是有赞美业,一面技术面是线上视频面,js相关的问题感觉答的还行,主要是后面网络那块几个问题没答好,八股文还不够熟练,一面之后没后续了,不管怎样,菜是原罪,继续加油吧~
往期回顾:
- 三年经验前端社招——众安保险 
- 三年经验前端社招——Shopee 
- 三年经验前端社招——腾讯微保 
- 三年经验前端社招——朴朴科技 
- 三年经验前端社招——丰巢科技 
天生我材必有用,千金散尽还复来
最近组建了一个江西人的前端交流群,如果你是江西人可以加我微信 ruochuan12 私信 江西 拉你进群。
推荐阅读
1个月,200+人,一起读了4周源码
我读源码的经历
老姚浅谈:怎么学JavaScript?
我在阿里招前端,该怎么帮你(可进面试群)

················· 若川简介 ·················
你好,我是若川,毕业于江西高校。现在是一名前端开发“工程师”。写有《学习源码整体架构系列
从2014年起,每年都会写一篇年度总结,已经写了7篇,点击查看年度总结。
同时,活跃在知乎@若川,掘金@若川。致力于分享前端开发经验,愿景:帮助5年内前端人走向前列。

识别上方二维码加我微信、拉你进源码共读群
今日话题
略。欢迎分享、收藏、点赞、在看我的公众号文章~