跨业自学党的第一次面试

背景

我是一名二本师范院校的2018届风景园林毕业生。

在大四经过一次景观公司的实习之后,发现园林救不了中国(致敬鲁迅),也不符合自己的内心,毅然决然走上了脱产自学 Web 前端的道路。

听说“金三银四”,遂我决定在3月开始寻找我的第一份前端工作。但没想到,市场上缺乏的是有经验、能独立开发的工程师,而不是像我这种没有经验的菜鸟。我的心蒙上了一层冰冰凉的霜。

在拉钩网简历被拒后,我都声情并茂的请教了对方我的不足,其中一位回答了我“非科班基础不够”以及“无项目经验”。我又声泪俱下地长段论述,终究是求得了一次来之不易的面试机会。

2019年3月14日,是我第一次面试的日子。

过程

面试前

在地铁上,我才发现我似乎没有准备简历,所幸的是我提前约定时间一个小时到达了公司楼下,楼下正好有一间打印店。

上楼,发现大家似乎都趴在桌子上午休,还好HR没有睡觉,不然我可能会站很久。

HR叫来一名程序猿小哥哥进入会议室,开始了面试。

趁小哥哥看我简历之际,HR问了我为啥转专业呀,学了些啥呀Blablabla...

面试中

之后,小哥哥开始考我了。由于忘了录音,我就说说我答的不好(不会)的这些问题。

Q: 异步与同步的区别?

A: (支支吾吾答不上来,对这个的概念很模糊)。


Q: 实现垂直居中。

A: 我说了“margin:0 auto”,“text-align:center”,“flex”(扯了半天实际自己不会)。


Q: 说一下JSONP。

A: JSONP是利用 script 标签可以跨域的特性实现跨域的。


Q: 具体是怎么实现的呢?

A: 我只是知道这个,没有具体去实现过。


Q: 普通函数与箭头函数的区别?

A: 箭头函数的 this 不能改变,箭头函数的 this 是外层函数的 this 。


Q: 说一下localStorage、sessionStorage、cookie的区别。

A: 一个关闭浏览器就没有了、一个还保存着,而cookie保存的很小。(回答的还是很模糊)


Q: 说一下有哪些选择器?

A: getById、getByClass、getByTags、Selector(平时自动补全惯了,竟然一下忘了element和query)。


Q: 如何删除一个节点?

A: innerHTML('')。(小哥哥很义正言辞的告诉我这是一个属性,不是一个方法。指出我肯定是jQuery这种东西用多了)

这下搞的我很慌,明显地答错了一个很基础的东西,这是不是我最后一个问题我都记不清了。我只记得HR告诉我:“好了就这样,电话联系。”

面试后

这次面试给我泼了很大一盆凉水,但同时也知道了自己很大的不足,基础的薄弱,面试的心态调整、事前的准备等。

我相信失败只是成功的一部分,我还会回来的。

答案

异步与同步的区别

程序里面所有的任务,可以分成两类:同步任务(synchronous)和异步任务(asynchronous)。

同步任务是那些没有被引擎挂起、在主线程上排队执行的任务。只有前一个任务执行完毕,才能执行后一个任务。

异步任务是那些被引擎放在一边,不进入主线程、而进入任务队列的任务。只有引擎认为某个异步任务可以执行了(比如 Ajax 操作从服务器得到了结果),该任务(采用回调函数的形式)才会进入主线程执行。排在异步任务后面的代码,不用等待异步任务结束会马上运行,也就是说,异步任务不具有“堵塞”效应。

举例来说,Ajax 操作可以当作同步任务处理,也可以当作异步任务处理,由开发者决定。如果是同步任务,主线程就等着 Ajax 操作返回结果,再往下执行;如果是异步任务,主线程在发出 Ajax 请求以后,就直接往下执行,等到 Ajax 操作有了结果,主线程再执行对应的回调函数。

实现垂直居中

搜集资料总结了水平垂直居中各8个共16种 CSS 居中方法。点击浏览

JSONP

JSONP 是服务器与客户端跨源通信的常用方法。最大特点就是简单适用,老式浏览器全部支持,服务端改造非常小。

它的基本思想是,网页通过添加一个

你可能感兴趣的:(跨业自学党的第一次面试)