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@}