前端面试题目及答案(欢迎拍砖)

1、盒子模型(IE 和w3c)。

   

2、css hack ie6

參见博客:http://blog.csdn.net/freshlover/article/details/12132801

简单描写叙述:_postion:absolute;//仅仅兼容ie6

                     *position:absolute;//兼容ie6 ie7

3、IE bugs 不少于5个,解决方式。由于什么照成。


提示:1、不能设置微高;因为ie6拒绝高度小于字号的设置。

              2、三像素

              3、li空白间距等

            ps: 其大部分是由于没有触发layout属性引发的bug

答案:http://www.iefans.net/ie-9-css-bug/

4、Css3中的新属性。举一个样例(渐变了解吗?)。

答案:1、这是一部分:http://paranimage.com/css3-new-techniques/

      2、第二部分:http://www.w3cplus.com/resources/css3-tutorial-and-case

5、写出块级元素,和行级元素

答案:举几个样例:块级元素(div,ol,li,ul,li,table..)

             行级元素:(a,span,strong,em,i,code...)

差别:块级元素能够设置width 和height,行级元素不能够。

      1、块级元素独占一行。

      2、块级元素能够设置盒子模型。即margin and padding。


Javascript题目


1、用原型实现去掉数组中反复的项

Array.prototype.unique=function(){
			var temp =[],
       		obj  ={},
     		len=this.length;
      		for(var i=0;i<len;i++){
				var o=this[i];
				if(!obj[o]){
					var count=1;
          			temp.push(o);
				}
			}
			return temp;
		}


2、作用域
var hello="1";
   	a();
  	function a(){
        hello="2";
        alert(hello);
	}
   	alert(hello);

答案:hello 已经全局污染了2,2

3、[]==[]   Nan==Nan输出;

   答案:false。false。

        [] 是Array的实例(引用)

4、推断一个对象是否是数组。

   答案:两个方法:

 [] instanceof Array
//true
Object.prototype.toString.call([])
//"[object Array]"

6、描写叙述捕获和冒泡,怎样实现。

答:最基础的东西。

7、闭包的优点与坏处。

答: 优点:防止全局污染,常驻内存。

避免函数命名冲突

    缺点:常驻内存。导致内存泄漏问题

8、事件代理。

 答:參考:http://www.cnblogs.com/rubylouvre/archive/2009/08/09/1542174.html

9、理解$和S.fn吗?请简单描写叙述。

答: $,指的是jquery的构造函数。是其别称。

     $.fn是jquery的原型

    扩展一下:jQuery.extend(object):为jQuery类加入类方法,能够理解为加入静态方法

jQuery.extend({
min:function(a, b){return a < b ?

a : b;},

max:function(a, b){return a > b ?

a : b;}

});

   jQuery.fn.extend(Object):对jQuery.prototype 进行扩展,即为其加入“成员函数”,能够开发扩展一个插件。

$.fn.extend({
alertWhileClick:function(){
$(this).click(function(){
alert($(this).val());
});
}
});

10、  解释严格模式和混合模式。

答:严格模式:标准模式

        混合模式:兼容模式

   每一种浏览器都支持这两种模式:主要是依据DOCTYPE切换。告诉浏览器选择哪种DTD。由DTD决定运行.

11、描写叙述document.write()与innerHTML差别。

   答:第一种是重绘页面,另外一种是给元素标签赋值

       document.write("hello");
       document.innerHTML="hello";

12、有使用过less吗?怎样使用,有什么优势。

    答:开发更加高效的CSS而诞生。

能够利用其 设置变量。引用、嵌套运算等,与时俱进。

13、用过的前端框架有哪些?

    bootstrape、seajs

14、基本数据类型和内置对象

   String  null undefined boolean  Number   |||      Object

   内置对象 Math、Number、RegExp Function Error

原文地址:https://www.cnblogs.com/yangykaifa/p/6788824.html