记跨越疫情时期的前端面试

2020-02-14

2020年春节前后面了 滴滴(外派),好未来,跟谁学,中信银行,猫眼,新东方,深度好奇,偶数科技还有几家小公司。

起点

前端经验并不丰富,面了一些公司,总结一下记得的内容。

first

1.继承的几种方式

1.2这几种继承方式分别有什么优缺点
   1.3 继承时你用到了new,知道new怎么实现的吗?

2.http和https的区别
3.说一下promise。

3.1 多个promise同时运行怎么做到。
   3.2 promise.all时有一个promise fail了怎么处理。

4.说一下提高性能的方法

4.1说一下路由懒加载
   4.2说一下vue-lazyload
   4.2.1说一下里面的节流怎么做的,能写出来吗

5.说一下Vue的原理(说了一下object.defineProperty的set和get,观察订阅者模式)
6.说一下从输入网页到加载成功发生了什么

6.1reflow和repaint介绍一下
   6.2说一下BFC 
   6.3说出几种状态码的含义。

7.讲一下闭包

7.1你用过闭包吗?

8.讲一下跨域和解决方法
9.移动端适配问题
10.几种cookie的区别和作用
11.用es5和es6写一个类
12.vue加载的过程
13.vue-router的实现原理以及hash模式和history的区别等等




second

1.了解promise吗?

1.1说一下promise的原理。(手写了一个不太成功的promise)

2.说几种继承

2.1这几种继承都有什么缺点
2.2实现组合继承

3.说一下flex的常用属性
4.说一下BFC

4.1BFC的内边距折叠

5.Js执行顺序的问题,涉及到promise,setTimeout

5.1了解宏任务和微任务吗

6.说一下Vue的原理

6.1Vue是怎么watch数组的
6.2computed和watch的区别
6.3怎么遍历一个对象里的所有的值(答了for in)
    6.3.1 for in 和for of的区别
    6.3.2 如果想用for of遍历对象怎么做
    6.3.3如果不想让对象被遍历怎么做(object.defineProperty里设置)

7.Vue3.0和2.0有什么区别

7.1怎么watch数组的

8.跨域
9.防抖和节流
10.隐式类型转换是怎么转换的?(em,怎么转换的,)
11.手写ajax
12.手写了以下代码问输出结果,涉及到执行顺序,宏任务,微任务



new  Promise(function(resolve, reject) {
    console.log(0)
    setTimeout(function() {
        console.log(2)
    }, 300);
    console.log(1)
    resolve('result')
}).then((res)=>console.log(res))

0 1 result 2

关于数据结构喝算法的问题(非计算机科班,这方面有点薄弱,需要再学习很多)

1.数组的去重以及各种操作

1.1.找到数组中出现次数最多的元素

2.斐波那契数列,涉及到递归的优化
3.数组的排序
4.关于时间复杂度和空间复杂度的计算
5.堆、栈,树的了解


此次面试经历了疫情前,疫情爆发两个过程,总算是最后的结果还可以。个人的总结:

1.要多写博客
2.多写代码,自己去试
3.对拿来用的东西要有思考,动脑子
4.对写过的功能和遇见的问题进行总结和改进
5.找对学习的平台和对象



原文链接:segmentfault.com

上一篇:基于 React、Redux、Webpack 和 React-Router 的轻量级前端框架。
下一篇:useRequest-蚂蚁中台标准请求 Hooks
相关教程
关注微信

扫码加入 JavaScript 社区

相关文章

首次访问,需要验证
微信扫码,关注即可
(仅需验证一次)

欢迎加入 JavaScript 社区

号内回复关键字:

回到顶部