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

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

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值