4月20号晚接到腾讯面试通知,21号上午九点半在海淀南路的艾丽华酒店三层面试。
腾讯的面试官们都很nice,面我的是个和我差不多大的小伙子,人很好,气氛不紧张。
投的是腾讯前端,面试内容主要涉及JavaScript和jQeury基础和原理,没有涉及算法,总体回想起来不是很难,但由于之前基础不好,很多东西只是会用,对原理性的东西认识不清,所以还是挂了。下面整理几个能记住的几个问题:
1.js有几种数据类型,如何判断?
答:6种。Undefined,Null,Boolean,Number,String,Object,function。
用typeof操作符判断。
2.接着上一个问题,调用typeof null时返回什么?
答:返回“object”,因为特殊值null被认为是一个空的对象引用。
3.什么是js中的事件委托?
答:事件委托是解决“事件处理程序过多”的方案。事件委托利用了事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。
也就是:利用冒泡的原理,把事件加到父级上,触发执行效果。
例如:click事件会一直冒泡到document层次。也就是说,我们可以为整个页面指定一个onclick事件处理程序,而不必给每个可单击的元素分别添加事件处理程序。
4.如何利用js获取昨天的时间?
答:主要用到Date对象的getDate()//返回日期月份中的天数//和setDate()//设置日期月份中的天数//方法。
function getYesterday{
var date = new Date();
date.setDate(date.getDate()-1);
var y = date.getFullYear();
//返回当前日期的月份,从0开始
var m = date.getMonth()+1;
var d = date.getDate();
return y+"-"+m+"-"+d
}
5.主流浏览器的内核有几种?
答:1.Trident内核:IE内核,使用它渲染的浏览器:IE、遨游、世界之窗、腾讯TT等。I
2.Gecko内核:Mozilla FireFox。
3.WebKit内核:Safari和Chrome浏览器。安卓和iOS默认的浏览器也都是基于WebKit
4.Konqueror内核:只能在Linux下使用
5.Presto内核:Opera浏览器。
6.jQuery中对动态生成的DOM元素绑定事件用什么方法?
答:利用.live()或.delegate()方法。二者的区别是.live()不支持链接调用,.delegate()支持。
7.看过jQuery源码么?
答:没有。面试官呵呵。
8.CSS怎么样?
答:会用。面试官呵呵。
。。。其他问题想不起了
面试时间较短,第一次面前端,也是自己没有准备好,好久没看前端的知识了,以前做项目都是现学现卖,基本属于面向百度的编程,以后还是要多多加强基础。