2018年前端大厂面试题(百度,阿里,滴滴,去哪儿网.....)

833 阅读4分钟

小女子非本专业毕业,原为种花专业户(园林)但是热爱互联网事业,干起了前端,日子不长,近日面了几家大厂(主要还是简历写得好,要不然非本专业感觉收不到大厂面试),总结一波面试题,还请各位一起讨论讨论~

度娘

首先会自我介绍,建议大家一定要说~说你偏向的方向!!!,比如偏向js还是css,移动端还是pc端,业务端还是技术底层。(有含量的面试官不会为难你不偏向的地方!remember ❤)

css:
  • 说说盒模型:标准(w3c),怪异(IE),平时项目中用哪一种,为什么?
  • css优先级以及权重,出题~
  • transform有哪些属性,最常用的是哪些,分别代表什么?
    • 一定要注意问的不是transation
  • 移动端布局用的什么方式,说一下rem和em的区别,阿里面的时候问到移动端怎么适配font-size?
  • 响应式布局的方式?
  • 垂直居中的方式,完美居中呢?
js:
  • 闭包打印,在内部console和外部console的区别?怎么实现0~10
  • 如何获取一个数组的最大值
  • 性能优化方案,在项目哪些地方用到过(注意需要有条理,然后结合项目)
  • dns-perfetch用法
  • 判断数组的方式
  • 判断空对象方法(阿里问到过)
  • 改变上下文环境的方式,call和apply和bind的区别
  • 绑定事件的几种方式有什么区别
  • for in 和 for of 有什么区别,为什么for...of不能遍历对象
框架(react)
  • react生命周期
  • 中间件概念
  • 传值问题(父传子,兄弟传值注意这里可以通过redux)
  • redux了解多少(重点)
  • 如何搭建一个项目
  • react的高阶组件在项目中用过哪些
  • react做过什么性能优化吗
  • 在项目中遇到过什么问题如何解决
  • 二叉树遍历通过id找到之前的所有,获取所有父节点
..... 努力回忆中......

滴滴

一面,二面,三面,三个人前两个问的都在重复问题。

css:
  • 实现珊栏布局
  • 脱离文档流的原理
  • BFC
js:
  • 递归通过id找name(手写):(我就说过出来混总要还的,度娘就问过我)
  • jsonp如何实现
  • 跨域的本质
  • 跨域的方式,在工作中用到的跨域解决方案
  • cookie有什么属性,怎么设置,在什么情况下设置
  • 如何清楚缓存
  • 缓存一些属性存放在哪里header,response
框架(react)
  • 虚拟dom是在哪里存在的
  • 为什么虚拟dom快,为什么操作dom耗性能,为什么会重排重绘,为什么重排重绘耗性能,渲染机制(你妹的给我答懵逼了😢)
  • angular的脏检查机制为什么脏
  • 如何学习前端,如何解决(必问)
..... 努力回忆中......

阿里爸爸

一面

不得不说阿里粑粑真的是问的有含量,深入浅出,一层层击退你的防御~ 就看你的深度~

css:
  • 定位的几种方式?
    1. position:relative,absolute,fixed,stasti并说出了区别以及使用场景
    2. 我以为就结束了呵呵呵是我太天真,继续问我relative会导致重绘吗?😊我~emmm废话,relative在标准文档流中会引起重排,absolute和fixed脱离文档流。
    3. 还是太天真,继续问我relative基于自身的移动和translate有什么区别,它的原点在哪里,what~行啵第一次遇到这样问的~
  • 如何实现0.5细线,实现outline0.5边框并且有圆角怎么办?
    • 微笑如我.....完美~
      border-radius: 30%;
      border: 5px solid red;
      box-shadow: 0 0 0 5px darkorange;
      
  • *2说说rem和em,你们在移动端项目怎么兼容不同屏幕的font-size~
  • 如何实现垂直居中
js:
  • 数组去重来一波
  • 给两个dom对象,判断他们的关系父子
  • 查找父节点下所有含有指定class的dom元素
  • 介绍一下项目遇到的问题,怎么解决,用到哪些技术栈
..... 努力回忆中.......

去哪网

不得不说一面的小哥哥简直温柔,不懂还主动给我讲~~~~

css:

此处没有css,因为那个部门是做底层架构的!

js:
  • new String(),String('1'),'1'的区别
  • new Array(1),[1,1]的区别
  • for of为什么遍历对象报错
  • 解构
  • new promise().all,即使有几个失败但是仍然返回
  • new promise()不管成功失败5s截获
  • +[],+{},+'1',+'1a',+[1],+{1},+symbol,为什么
  • generater函数如何获取state
  • fetch和ajax有什么区别
  • react的有key和没有key,dom是怎么渲染的。
..... 努力回忆中......

❤ 总结: 大概就想起来这么多,面试时候千万不可以紧张,因为紧张就会影响逻辑~好咯学习去咯,下周还有百度面试~祝我好运么么哒,待我下周回来继续更~