前端实习面试总结-端点科技(一)

590 阅读4分钟

前言

自上次滴滴面试结束后,感受到了自己的众多不足,所以我觉得我目前还需要加强学习,一点一点进步,一步一步前进。😁从普通公司开始慢慢积累面试经验,“每天进步一小步,未来前进一大步”,坚持每天学习。

如果对滴滴面试题目感兴趣的可以去看看我之前的滴滴面试总结

端点科技

该岗位只招长期实习,而我因为想着面试试试,没想着长期实习,所以没有安排二面。面后我也问了面试官面试结果,得到了比较不错的评价。

1. var、let、const的区别

这是一个常考题,也很简单,每个人都能说上两句,但难的是深入研究和准确列举,我当时也算是简单说了一些。

  • var是es6之前就有的,它声明的变量会挂载在window上,而es6的let、const不会
  • var声明的变量存在变量提升,而let和const不会(存在争议)
  • let和const存在暂时性死区,然后引到es5执行上下文中var和let、const储存的不同。 关于es执行上下文我是看了这篇文章: # 面试官:说说执行上下文吧

关于三者区别我推荐看:var、let和const区别

2. 你了解箭头函数吗

这可不是经常用的吗,但你又了解多少和function声明的函数的区别呢

我只答了两点区别:1. 箭头函数内部没有this 2. 箭头函数没有arguments

详解箭头函数和普通函数的区别以及箭头函数的注意事项、不适用场景

3. bind、call、apply的区别

关于三者可以记一下MDN上的介绍:

bind() 方法会创建一个新函数。当这个新函数被调用时,bind() 的第一个参数将作为它运行时的 this,之后的一序列参数将会在传递的实参前传入作为它的参数.

call() 方法使用一个指定的 this 值和单独给出的一个或多个参数来调用一个函数。

apply()call()类似,不同的是第二个参数必须是数组(或者类数组对象)。

4. 你讲讲原型链

可以简单总结一句话:每一个实例都有一个__proto__属性指向其构造函数的原型,当构造函数的原型指向另一个实例或者原型时就形成了原型链。

详细可以看冴羽大佬的文章:JavaScript深入之从原型到原型链

5. 你了解继承吗

当时答不全,只讲了三种继承方法

  • 原型式继承
  • 构造函数式继承
  • 组合式继承

详细可以了解:(建议收藏)原生JS灵魂之问, 请问你能接得住几个?(上)

6. react 数据如何进行更新

这算是个大话题,我当时没太理解,就直接讲了一下fiber架构的流程。比如为什么需要fiber,什么是fiber,它的工作流程是什么等等讲了一大堆,现在回顾感觉讲的不是很好,虽然大致都讲到了,但缺少整体的条理性。

这里我强烈推荐卡颂老师的React 技术揭秘

7. 你知道Eventloop吗

一讲到Eventloop我就忘不掉,具体可以看看我年前滴滴面试总结最后一题

8. https和http的区别

我当时就讲了两点区别,HTTP是明文传输的,而HTTPS是在HTTP上建立SSL加密层,并对传输数据进行加密,是HTTP协议的安全版。

HTTPS主要作用是:1. 对数据进行加密,并建立一个信息安全通道,来保证传输过程中的数据安全。 2. 对网站服务器进行真实身份认证。

我推荐看完这篇 HTTPS,和面试官扯皮就没问题了

9. 从输入url到呈现到页面的过程

这是一个很大的话题,基本上可以体现自己在浏览器这方面的前端知识体系。

推荐观看史上最详细的经典面试题 从输入URL到看到页面发生了什么?从输入URL到页面加载的过程?如何由一道题完善自己的前端知识体系!

后言

这些问题都是很基础的,很考验八股能力。如果对你有帮助,可以点一个小赞,后面还有其他公司的面试总结,陆续会发布。