前端时间小编看到一份阿里Web前端开发面试题,看完之后我感觉好多东西都模糊了,因为我们平时少用它,所以。。。
下面小编把“阿里Web前端开发面试题”贴出来,大伙看看吧~~
1.CSS盒子模型, 定位和相对定位
1)清除浮动,什么时候需要清除浮动,清除浮动都有哪些方法
2)如何保持浮层水平垂直居中
3)position和display的取值和各自的意思和用法
4)样式的层级关系,选择器优先级,样式冲突,以及抽离样式模块怎么写,说出思路,有无实践经验
2.JavaScript基础
1)JavaScript里有哪些数据类型,解释清楚null和undefined,解释清楚原始数据类型和引用数据类型。比如讲一下1和Number(1)的区别
2)将一下prototype是什么东西,原型链的理解,什么时候用prototype
3)函数里的this什么含义,什么情况下,怎么用。
4)apply和call什么含义,什么区别?什么时候用。
5)数组和对象有哪些原生方法,列举一下,分别是什么含义,比如链接两个数组用哪个方法,删除数组的质定项。
3.JavaScript的面向对象
1)JS模块包装格式都用过哪些,CommonJS、AMD、CMD、KMD。定义一个js模块代码,最精简的格式是怎样。
2)JS怎么实现一个类。怎么实例化这个类。
3)是否了解自定义事件。jQuery里的fire函数是什么意思,什么时候用。
4)说一下了解的js设计模式,解释一下单例、工厂、观察者。
5)ajax跨域有哪些方法,jsonp的原理是什么,如果页面编码和被请求的资源编码不一致如何处理?
4.开源工具
1)是否了解开源的工具bower、npm、yeoman、Grunt、gulp,有无用过,有无写过,一个npm的包里的package.json具备的必要的字段都有哪些(名称、版本号,依赖)
2)fiddle、charles有没有用过,什么时候用
3)会不会用ps扣图,png、jpg、gif这些图片格式解释一下,分别什么时候用。是否了解webp
4)说一下你常用的命令行工具
5)会不会用git,说上来几个命令,说一下git和svn的区别,有没有用git解决过冲突
5.计算机基础
1)说一下网络五层模型(HTTP协议从应用层到底层都基于哪些协议),HTTP协议头字段说上来几个,缓存字段是怎么定义的,白癜风治疗去哪里北京治疗白癜风手术医院