深信服 一面面经.
1.CSS盒模型
w3c盒模型:width不包含border和padding
IE盒模型:width包含border和padding
可以通过css去设置盒模型,通过box-sizing去设置,content-box为w3c盒模型,border-box为IE盒模型。
2.BFC
讲的不太清除,只说了BFC的隔离和BFC的创建,感觉不是面试官想要的答案。
这里面还问了一个css代码题
问高度:
#container { } #center { width: 100%; } #left { float:left; height:300px; width:300px; } #right { height: 400px; width: 400px; float: right; }
3.重排、重绘
操作DOM结点会导致重排,更改color的一些属性是不会导致重排的。重排会导致重绘,但是有重绘不一定会有重排。
4.less、sass
sass的优缺点。
5.三栏布局
display:flex;
display:grid;
面试官要求用浮动去实现。
贴一段代码:
body { min-width: 550px; } #container { padding-left: 200px; padding-right: 150px; } #container .column { float: left; } #center { width: 100%; } #left { width: 200px; margin-left: -100%; position: relative; right: 200px; } #right { width: 150px; margin-right: -150px; } #footer { clear: both; }
6.Js继承
讲了原型链继承和构造函数继承
两者的优缺点(答的非常差)
call与apply的区别
如何只使用子类的对象或是方法(回答的不太好,原来想到了用defineproperty去设置可枚举属性,然后面试官说这样有点麻烦,提示后用hasOwnProperty去做判断。)
具体还有些忘了.....
具体还有些忘了.....
7.对象遍历
参考深拷贝,具体方法用了for in(好像答的也不是面试官想要的答案)
8.==与===
问到原理的区别
9.HTTP缓存
具体参考强缓存、协商缓存
如何实现不用缓存?(***-control)
10.跨域
只讲了jsonp、cors、图像pin(其他想不起来了,好像还不够)
11.cookie、localStorage、sessionStorage
具体讲应用、优缺点
12.字符串匹配
例如['asdadasdasd','adsdadad','wqewqewqe','dasdasd','qweqweqwe']
求公共字符的大小
em....伪暴力解了这题,但是太麻烦了。
大概就这么多,略略略有点惨!秋招路上,大家共勉哈!
#面经##秋招##前端工程师##深信服#