前端面试题-滴滴一面
1、先手写代码
//写闭包
var cal = counter(); cal(); //num=? cal(); //num=? var cal2 = counter(); cal(); //num=? cal2(); //num=? function counter(){ var num = 0; function add(){ return num++; } return add; }
说一下每次的num,并解释原因。
2、说一下继承
写一个并进行讲解 我写的是组合构造式继承,并且改进,这个缺点主要是构造函数new了两次,改成组合寄生式,并且说了其优点。 Object.create(),自己手动实现,不用api。
3、说一下布局
水平和垂直方向居中 我说了两个,一个是利用flex局部,一个是利用transform,这两个都是针对高宽不确定的进行水平和垂直居中。
4、接着进行布局:
float有什么值,作用是什么? 一个inline的元素,一个block的元素,怎么实现让他俩一行。
5、接着谈布局
文字水平垂直居中text-align,line-heightyiji base-line的用法。
6、接着说flex
三个块元素,flex-grow分别设置为1、2、3,会怎么样展示。 把中间元素宽度设置为固定宽度为200px,那么剩余的空间怎么分配的? flex:1;这个是什么呢意思? flex-grow 以及flex-shrink flex:是有三部分组成的(flex-grow flex-shrink flex-basis)
7、说一下二分查找
远程面,这个进行实现代码,并且调试
8,说一下你了解的es6
let、const、箭头函数以及promise,promise外部无法改变它的状态,那么内部能改变它的状态吗?
上一篇:
Java基础知识总结(2021版)
下一篇:
【前端面试】我遇到的那些前端笔试题~