首页

Web前端面试试题20151116(前端工程师)

标签:前端,工程师,web,面试,试题,面试题     发布时间:2015-11-21   

1.  请使用JavaScript的特效(闭包,继承等),写一份自我介绍

答:

        闭包: 是指有权访问另外一个函数作用域中的变量的函数,即在函数内部定义本函数才能使用的局部变量,减少全局作用域中的变量,净化全局作用域

       继承: 分为原型式继承(即原型prototype机制)和类式继承,参考链接http://segmentfault.com/a/1190000002440502        示例:http://yunpan.cn/cL2cpk8YHK2ma (提取码:cfbe)

2. 请用最少字节实现以下需求的样式

字体Georgia,字号13px/1.2倍行高,粗体,缩进2个中文字符

答:font: bold 13px/1.2em Georgia,sans-serif;text-indent:2px;

3. 写出下面代码在浏览器中的颜色值?

background:red;@b@_background:green;@b@*background:blue;@b@background:black/9;

答:  IE6中blue、 IE7 遨游中blue、其他(IE8 chrome ff safari opera等)是red

                          备注(知识库相关):

                                 兼容性hacker设置,分下面三大类:

                                 a.   IE6认识的hacker 是下划线_ 和星号 *

                                 b.  IE7 遨游认识的hacker是星号 *

                                 c.   其他(IE8 chrome ff safari opera等)

4. 请写出兼容所有浏览器的半透明css

答:   filter:alpha(opacity=50);

         -moz-opacity:0.5;

         -khtml-opacity: 0.5;

         opacity: 0.5;

备注:

   filter:alpha(opacity=50):这个是为IE6设的,可取值在0-100,其它三个0到1.

  -moz-opacity:0.5; 这个是为了支持一些老版本的Mozilla浏览器。

  -khtml-opacity: 0.5; 这个为了支持一些老版本的Safari浏览器。

  opacity: 0.5; 这是最重要的,因为它是CSS标准.该属性支持firefox, Safari和 Opera.

5.添加些css让其水平垂直居中

<div style=" text-align:center;line-height:20px;height:20px;vertical-align:middle;">文字..</div>

6. 正则表达式匹配,开头为11N,12N或1NNN,后面-7-8个数字的电话号码。

答:

function isMatch(s){@b@    var patrn=/11N,12N|1NNN[0-9]{7,8}$/;@b@    if (!patrn.exec(s)) return false@b@    return true@b@ }

7. 写出下面代码的输出值:

var  obj={@b@    a:1,@b@    b:function(){console.log(this.a)}@b@};@b@var a=2;@b@var objb=obj.b;@b@obj.b();@b@objb();@b@obj.b.call(windows;);

答:

 obj.b();//1@b@ objb();//2@b@ obj.b.call(window);//2

8. 写出下列代码的输出值:

function A(){} @b@function B(a){ @b@    this.a=a; @b@} @b@function C(a){ @b@     if(a){ @b@            this.a=a; @b@     } @b@} @b@A.prototype.a=1; @b@B.prototype.a=1; @b@C.prototype.a=1;@b@@b@console.log(new A().a); @b@console.log(new B().a); @b@console.log(new C(2).a);

答:

console.log(new A().a);//1@b@console.log(new B().a);//undefined@b@console.log(new C().a);//2

9. 写出下列代码的输出值:

var a=1; @b@function b(){ @b@      var a=2; @b@     function c(){ @b@         console.log(a); @b@     } @b@    return c; @b@} @b@b()();

答:b()();//2

10. 请对String类添加toMoney方法,实现如下效果

“12.99“.toMoney() => "12.99"

  "12000.99".toMoney() =>"12,000.99"

  "12000000.99".toMoney() =>"12,000,000.99"

答:

String.prototype.toMoney=function(){ @b@    return this.toString("N"); @b@}


试题下载: Web前端面试试题20151116(前端工程师).docx