淘宝前端的一些面试题
「 CSS篇 」
-
CSS 盒子模型,绝对定位和相对定位
-
清除浮动,什么时候需要清除浮动,清除浮动都有哪些方法
-
如何保持浮层水平垂直居中
-
position 和 display 的取值和各自的意思和用法
-
样式的层级关系,选择器优先级,样式冲突,以及抽离样式模块怎么写,说出思路,有无实践经验
-
CSS3动画效果属性,canvas、svg的区别
-
px和em的区别
「 JavaScript 篇 」
JavaScript 基础
-
JavaScript 里有哪些数据类型,解释清楚 null 和 undefined,解释清楚原始数据类型和引用数据类型。比如讲一下 1 和 Number(1)的区别
-
将一下 prototype 是什么东西,原型链的理解,什么时候用 prototype
-
函数里的this什么含义,什么情况下,怎么用。
-
apply和 call 什么含义,什么区别?什么时候用。(我有篇文章 重点分析过)
-
数组和对象有哪些原生方法,列举一下,分别是什么含义,比如连接两个数组用哪个方法,删除数组的指定项和重新组装数组(操作数据的重点)。
-
怎样添加、移除、移动、复制、创建和查找节点?
JavaScript 的面向对象
-
JS 模块包装格式都用过哪些,CommonJS、AMD、CMD。定义一个JS 模块代码,最精简的格式是怎样。
-
JS 怎么实现一个类。怎么实例化这个类。
-
是否了解自定义事件。jQuery里的fire函数是什么意思,什么时候用。
-
说一下了解的js 设计模式,解释一下单例、工厂、观察者。
-
ajax 跨域有哪些方法,jsonp 的原理是什么,如果页面编码和被请求的资源编码不一致如何处理?
「 开源工具 」
1) 是否了解开源的架构工具 bower、npm、yeoman、gulp、webpack,有无用过,有无写过,一个 npm 的包里的 package.json 具备的必要的字段都有哪些(名称、版本号,依赖)
2)github常用不常用,关注过哪些项目
3)会不会用 ps 扣图,png、jpg、gif 这些图片格式解释一下,分别什么时候用。如何优化图像、图像格式的区别
4)说一下你常用的命令行工具
5)会不会用Git,说上来几个命令,说一下git和svn的区别,有没有用git解决过冲突
「 计算机网络基础 」
1)说一下HTTP 协议头字段说上来几个,是否尽可能详细的掌握HTTP协议。一次完整的HTTP事务是怎样的一个过程?
2)cookies 是干嘛的,服务器和浏览器之间的 cookies 是怎么传的,httponly 的 cookies 和可读写的 cookie 有什么区别,有无长度限制
请描述一下cookies,sessionStorage和localStorage的区别
3)从敲入 URL 到渲染完成的整个过程,包括 DOM 构建的过程,说的约详细越好。
4)是否了解Web注入攻击,说下原理,最常见的两种攻击(XSS 和 CSRF)了解到什么程度。
5)是否了解公钥加密和私钥加密。如何确保表单提交里的密码字段不被泄露。验证码是干嘛的,是为了解决什么安全问题。
6)编码常识:文件编码、URL 编码、Unicode编码 什么含义。一个gbk编码的页面如何正确引用一个utf8的的资源
「 前端框架 」
1) 对MVC、MVVM的理解
2) jQuery的事件委托方法on、live、delegate之间有什么区别?
3)前后分离的思想了解吗?
考察学习能力和方法
1)你每天必须登录的网站(前端技术相关)是什么?
2)前端技术方面看过哪些书,有无笔记,都有哪些收获。
3)收藏了哪些代码片段?有想过开源自己的代码嘛?
4)怎么理解前端技术的大趋势?自己再做哪方面的知识储备?
5)是否了解或精通其他(后端)的编程语言?
6)做项目有没有遇到哪些印象深刻的技术攻关,具体遇到什么问题,怎么找答案的,最后怎么解的。
7)对以后自己的前端职业路线,咋么规划