面试奇谈

关于本文

本文只做问题记录及部分解答,另外部分解答移步另一篇博客 面试奇谈-解答篇

分辨函数与对象

分辨dom的层级

正则

自适应正方形,占45%

判断a,b,c,d四个请求哪个请求响应时间最短(promise)

实现一个bind

手写一个弹窗插件

2018-03-08—— 拼多多

  • css优化,css放Body前和后的区别
  • 原型、原型链、继承
  • rem的优缺点
  • var a = [] 与 var a = new Array()的区别
  • ([“1”,”2”,”3”]).map(parseInt)
  • null和undefined
  • 栈和堆的区别,前端内存分配
  • float时候的position是什么
  • 一般做动画时间间隔是多少
  • 如何判断链表是否存在环
  • 散列表,数组,链表的优劣
  • 有已排序数组A,B,如何用最快的方法判断A中有多少元素属于B
  • 输入“123”,输出123
  • 事件代理事件委托
  • 阻止事件冒泡
  • 浏览器多进程,模拟多进程
  • 进程与线程的区别
  • 有什么事件是异步的
  • 快排,插入排序
  • 最近在了解什么新技术(说了vue)
  • 问了es6,es7
  • 问了浏览器引擎
  • webworker
  • every、filter、map、forEach、once

2018-03-06—— 深圳小鹅通电面

  • 自我介绍
  • 问了项目
  • 问了输入url回车之后发生了什么事
  • 问了怎么优化(页面优化)
    • 我说了js,css,webpack,图片,事件代理,问我事件代理如何实现
  • 问了为什么重构项目
  • 问了为什么使用这个技术栈
  • 问了ng2数据绑定
  • 问了http首部认识吗
  • 最后说了句,2天没联系你就说明不过,这个是直接凉了吧//

2018-03-05 —— 蚂蚁金服电面

很多说不出来,说了思路,有些对了有些错了。不求能去,但真的见了世面了。。。

一面,可能有且只有一面

问了技术栈

  • 我说前端ng2,后端go,数据库postgresql
  • 问了还有没有了解其他,我说了在看vue,说了二者语法类似
  • 问了双向绑定,脏检原理
  • 问了express,我说就做完简单交互就没了
  • 啊补一个,问了jenkins,我说了大概思路

问了好多es6

推荐去看ECMAScript 6 入门 – 阮一峰

  • 我先说了let,const,promise,generator
  • 又问了数组解构
  • 问了promise的3个状态,我就只记得pendling
  • 问我用promise如何实现:同时发送几个请求,但是需要等到所有请求结束再执行回调。。我大头得问他为什么不用generator。
  • 他说promise可以实现generator
  • 问了了解箭头函数吗,跟普通函数的区别(没答出来)

问了lodash

  • 我说了大概就是做一些公共的组件,然后存放在一个地方,方便使用。他说大概就是这么个东西。后面又问了什么,我忘记了。(不怎么对)

问了css

  • flexbox
  • 盒子模型,区别,如何让单独某个div进入怪异模式(后面这个没答出来)
  • 问了dom回流重绘(不会)

问了存储

  • 其实这个是我自己说的,因为问了我css,我css巨弱,就跟他说我还在系统学习,就像项目中xxxxxxxx,然后说到了sessionstroage、localstroage,然后问我二者的区别,说完问我还知道别的吗,我说了cookie和session算不算,说了前后端交互的过程,说完补刀了manifest,说了优点还有机制。

问了怎么优化

  • 我说了webpack,js,css之类的,减少http请求
  • 问了图片,我说base64 雪碧图 ,ng2AOT自带打包雪碧图,
  • 问了懒加载,我给他说了思路之后,他问我怎么监控是否到底页面底部(答不出来)

问了原生ajax请求

  • 我说了new一个xmlhttprequest对象,然后发请求,根据返回的readystatus来判断回复的状态
  • 问了项目中怎么使用网络请求的,我说了对get,post做一个封装,减少一些冗余代码。

问了攻击

  • 我说注入,xss
  • 问我怎么防注入。我说了前端做下过滤,后端用sql变量。
  • 问了跨域(项目+总结)

算法

  • 写一个get函数用来取数据,有个object,下面有多级,有孙子,孙孙子,孙孙孙子。。如何从某一级根据键值对拿出一个键,我答了柯里化,不知道对不对。。(后来发现牛头不对马嘴)
  • 说了我的博客有排序算法,问我知道什么排序算法:说了冒泡,快排,插入,选择,js自带的排序。问我复杂度。
  • 问了数组去重,我说了一开始用过一种蠢方法,后来有新方法,印象是什么form,一句代码就能解决。(查了下是return Array.from(new Set(array));)

还有我又说了我在看书

  • js高级程序设计
  • css权威指南

问我有没有想问的

  • 问了实习生的培养,他说主要是项目驱动,有代码审核,有经验分享会。
  • 其实应该问下我的表现怎么样//(逃

2018-02-28 —— 理想信息产业有限公司面试

写在前面
今天去的地方怪怪的,说是中国电信的一个子公司,总部在上海,广州有几个办事处。。我去的地方在居民区。。他说是环境最差的一个,专业的hr也不在。

技术面

有2个人面试,一个是前端开发的,另一个可能是经理,问的东西不多,所以其实也没什么好总结的。

  • 问了跨域,我把总结的东西基本都说了一遍,但是回来仔细回想了下好像答的不是很好。下次回答思路应该如下:

    1. jsonp:实现原理<script>标签,回调获取数据;
      优点:不受同源限制,能兼容旧版本浏览器;

      缺点:只能get。

    2. cors:非简单请求:json,put,delete。服务器处理2次请求,压力大;
      简单请求:get/post。然后要引入讲到cookie,session。
  • 问了做过的项目,我觉得 答得也不是特别好,我直说了做过什么项目,应该引入项目里面遇到的问题。

  • 问了会不会写文档,有时候要帮忙写文档。
  • 问了有没有了解vue,react。
  • 问了有没有了解ng1。我说没写过,但是ng2比ng1好一点,具体体现在双向绑定上,ng1是双向数据流,检查次数很多,ng2是单向数据流,只检查一遍。
  • 问了我简历上写的项目重构的事,我就说了类似数据结构优化之类的。
  • 然后问期望薪资,我说了3-4k。
  • 问我有没有想问的,我问了他们公司跟电信什么关系,他说是电信的子公司,问了环境,问了吃住,问了实习生培养,他说目前没有完善的培养制度,问了要做多久,他的意思应该是做到毕业,然后说实习生没事,半路走不怕违法之类的。问了下转正。。他说5,6k,真的有点嫌弃。
  • 然后就没问什么问题了,时长也就18分钟左右,然后就说说人事部没人在,叫我回去等通知。感觉有点凉。

2018-02-26 —— 美的面试

今天一切还算顺利,就是过去的时候被黑车坑了90块车费很心疼。

第一次面试,拿到offer记录一下。

hr电话面(02-25)

问了下日常,还有能全勤吗,然后问了2个基本的问题,js基本数据类型apply,call,bind。第一次接电话,很紧张,答得不是很好,然后通知我去佛山面试。

技术面(02-26)

笔试题(题真的很多,css我都没写)

  • 正则-选择题
  • 关于日期的-选择题(month是从0开始的)
  • window、location-选择题
  • h5增加了2个本地存储-填空题(sessionStroage、localStroage)
  • 变量作用域,变量提升,函数提升,后面追问let有没有提升(答案是没有)
  • 闭包会导致什么问题 - 问答题(答案是内存泄漏)
  • !!typeof “111”===”string” 的boolean值 -选择(后续问了执行顺序)
  • 原型链 - 问答题
  • 事件委托,事件冒泡,事件捕获,事件的函数- 问答题
  • 关于优化 - 问答题
  • 关于浏览器兼容 - 问答题(回答了项目中遇到的几个问题)
  • 什么是盒子模型 - 问答题
  • 字符串反转(想到了很蠢的方法,然后没写,写了思路。面试官说是数组反转)
  • ul和li列表的默认样式
  • 暂时想到这么多(css都没做所以不记得了,印象中有一道居中,一道flex)。。

面试官提问

  • 问了let有没有变量提升的问题
  • 还有一道简单的题我写错了。。他在引导我。。我觉得。。我基础实在。。
  • 项目中有什么印象特别深刻的(说了项目中遇到的几个问题,关于Angular-cli在微信上的问题,关于ios11图片上传的问题)
  • 平时有没有做什么东西(github+hexo这个博客)
  • css都不会:flexd、css3
  • 数据库问了下mongoDB,我说了用postgresql,以及优点
  • apply,call,bind的区别,以及怎么使用参数(后面这个没能答出来)
  • 问了express有什么中间件(没能答出来)
  • 介绍了他们部门的情况
  • 然后说实习生也是有工作压力的
  • 然后问能做多久,问我有没有想问的
  • 面试官问的都很基础,而且很少问项目,我尽量把问题往项目带,才有东西讲。
  • 面试官人很不错,很有亲和力

晚上hr再面(02-26)

  • 问了下我说只能实习3-4个月,她说至少要6个月,我问了是不是考虑6个月就能过去,他说是。
  • 问了下转正待遇怎么样,她说目前应届生的待遇,就8x14这样子,但每年不一样,都会涨。
  • 实习的话2-3k包住+餐补。