js面试题.docx

上传人:b****6 文档编号:5362918 上传时间:2022-12-15 格式:DOCX 页数:49 大小:48.47KB
下载 相关 举报
js面试题.docx_第1页
第1页 / 共49页
js面试题.docx_第2页
第2页 / 共49页
js面试题.docx_第3页
第3页 / 共49页
js面试题.docx_第4页
第4页 / 共49页
js面试题.docx_第5页
第5页 / 共49页
点击查看更多>>
下载资源
资源描述

js面试题.docx

《js面试题.docx》由会员分享,可在线阅读,更多相关《js面试题.docx(49页珍藏版)》请在冰豆网上搜索。

js面试题.docx

js面试题

第一题

编写一个方法求一个字符串的字节长度

第二题

如何控制alert中的换行

第三题

解释document.getElementById("ElementID").style.fontSize="1.5em"

第四题

将一个类似图中的效果分离成css和html

第五题

按照格式xxxx年xx月xx日xx时xx分xx秒动态显示时间要求不足10的补0

第六题

编写一个方法去掉一个数组的重复元素

第七题

说出3条以上ff和ie的脚本兼容问题

第八题

按要求写一个简单的ajax示例简单的没意义就不写了

1.

newfunction(s)

{

if(!

arguments.length||!

s)returnnull;

if(""==s)return0;

varl=0;

for(vari=0;i

{

  if(s.charCodeAt(i)>255)l+=2;

  elsel++;

}

alert(l);

}("hello你好,我好,大家好!

world!

");

2.

alert("hello\nworld");

3.

em是个相对单位。

5.

newfunction()

{

with(newDate())

{

  vart=function(a){returna<10?

"0"+a:

a;}

  alert(getFullYear()+"年"+t(getMonth()+1)+"月"+t(getDate())+"日"+t(getHours())+"时"+t(getMinutes())+"分"+t(getSeconds())+"秒");

}

}

6.

Array.prototype.strip=function()

{

if(this.length<2)return[this[0]]||[];

vararr=[];

for(vari=0;i

{

  arr.push(this.splice(i--,1));

  for(varj=0;j

  {

   if(this[j]==arr[arr.length-1])

   {

    this.splice(j--,1);

   }

  }

}

returnarr;

}

vararr=["abc",85,"abc",85,8,8,1,2,5,4,7,8];

alert(arr.strip());

8.

loading

数据正在加载......

varBrowser={

/**

Browser对象用于检测浏览器,其中用到了IE的条件编译

*/

/*@cc_on

isIE:

true,

@*/

isFF:

window.navigator.appName.toUpperCase().indexOf("NETSCAPE")!

=-1?

true:

false,

isOpera:

window.navigator.appName.toUpperCase().indexOf("OPERA")!

=-1?

true:

false

};

Function.prototype.bind=function(object)

{

var_this=this;

returnfunction()

{

  _this.apply(object,arguments);

}

}

functionHttpRequest()

{

this.async=true;

this.cache=false;

this.xmlhttp=function()

{

  if(Browser.isFF&&window.XMLHttpRequest)

  {

   try{

    returnnewXMLHttpRequest();

   }catch(e){}

  }

  elseif(Browser.isIE&&window.ActiveXObject)

  {

   varVersion=[

     "Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0",

     "Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP.2.6","Msxml2.XMLHTTP",

     "Microsoft.XMLHTTP.1.0","Microsoft.XMLHTTP.1","Microsoft.XMLHTTP"

    ];

   for(vari=0;i

   {

    try{

     returnnewActiveXObject(Version[i]);

    }catch(e){}

   }

  }

}()||false;

}

HttpRequest.prototype={

send:

function(object,url,callback)

{

  if(!

this.xmlhttp)return;

  this.xmlhttp.open(object?

"post":

"get",url,!

!

this.async);

  if(object)this.xmlhttp.setRequestHeader("content-type","application/x-www-form-urlencoded");

  if(!

this.cache)

  {

   this.xmlhttp.setRequestHeader("No-Cache","1");

   this.xmlhttp.setRequestHeader("Pragma","no-cache");

   this.xmlhttp.setRequestHeader("Cache-Control","no-cache");

   this.xmlhttp.setRequestHeader("Expire","0");

   this.xmlhttp.setRequestHeader("Last-Modified","Wed,1Jan199700:

00:

00GMT");

   this.xmlhttp.setRequestHeader("If-Modified-Since","-1");

  }

  if(!

this.callback)this.callback=callback;

  if(!

this.async)

  {

   if(typeof(this.callback)=="string")

   {

    eval(this.callback);

   }

   elseif(typeof(this.callback)=="function")

   {

    this.callback(this.xmlhttp);

   }

  }

  else

  {

   this.xmlhttp.onreadystatechange=function()

   {

    if(this.xmlhttp.readyState==4)

    {

     if(this.xmlhttp.status==0||this.xmlhttp.status==200)

     {

      if(typeof(this.callback)=="string")

      {

       eval(this.callback);

      }

      elseif(typeof(this.callback)=="function")

      {

       this.callback(this.xmlhttp);

      }

     }

    }

   }.bind(this);

  }

  this.xmlhttp.send(object);

},

abort:

function()

{

  if(this.xmlhttp&&this.xmlhttp.abort)this.xmlhttp.abort();

}

};

//ajax类定义结束

newHttpRequest().send(null,"",

function(r)

{

       document.getElementById("load").innerHTML=r.responseText.match(/

(?

:

\/)?

>/img).join("");

});

javascript面试题汇总

1、form中的input有哪些类型?

各是做什么处理使用的?

textradiocheckboxfilebuttonimagesubmitresethidden

  submit是button的一个特例,也是button的一种,它把提交这个动作自动集成了。

    如果表单在点击提交按钮后需要用JS进行处理(包括输入验证)后再提交的话,通常都必须把submit改成button,即取消其自动提交的行为,否则,将会造成提交两次的效果,对于动态网页来说,也就是对数据库操作两次。

button具有name、value属性,能触发onclick事件

submit继承了button

submit增加了触发表单onsubmit事件的功能、增加了执行表单的submit()方法的功能

INPUTtype=submit按回车提交表单

button提交的是innerTEXT

2、table标签中border,cellpaddingtd标签中colspan,rowspan分别起什么作用?

border边界

cellpadding边距  

cellpadding,是补白,是指单元格内文字与边框的距离

cellspacing,两个单元格之间的距离

colspan跨列数

rowspan跨行数

3、form中的input可以设置readonly和disable,请问这两项属性有什么区别?

readonly不可编辑,但可以选择和复制

disable不能编辑复制选择

4、JS中的三种弹出式消息提醒(警告窗口、确认窗口、信息输入窗口)的命令是什么?

alert

confirm

prompt

5.题目:

当点击按钮时,如何实现两个td的值互换?

用javascript实现此功能。

分析:

这个题主要是考变量传值。

其次是考如何取元素的值。

第一种代码如下:

Code

1

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

2

//www.w3.org/1999/xhtml">

3

4

5无标题文档

6

7//

[CDATA[

8functionsubmitbtn(){

9

10vartText1=document.getElementById('txt1');

11varSubmitBtn1=document.getElementById('submitBtn1');

12vartText2=document.getElementById('txt2');

13varSubmitBtn2=document.getElementById('submitBtn2');

14SubmitBtn1.onclick=function(){

15vartemp=tText1.value;

16tText1.value=tText2.value;

17tText2.value=temp;

18};

19SubmitBtn2.onclick=function(){

20vartemp=tText2.value;

21tText2.value=tText1.value;

22tText1.value=temp;

23};

24}

25window.onload=function(){

26submitbtn();

27}

28//]]>

29

30

31

32

33

34

35

36

37

38

第二种代码如下:

Code

1

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

2

//www.w3.org/1999/xhtml">

3

4

5无标题文档

6

7//

[CDATA[

8functionsubmitbtn(){

9

10vartText1=document.getElementById('txt1');

11varSubmitBtn1=document.getElementById('submitBtn1');

12vartText2=document.getElementById('txt2');

13varSubmitBtn2=document.getElementById('submitBtn2');

14SubmitBtn1.onclick=function(){

15vartemp=tText1.innerHTML;

16tText1.innerHTML=tText2.innerHTML;

17tText2.innerHTML=temp;

18};

19SubmitBtn2.onclick=function(){

20vartemp=tText2.innerHTML;

21tText2.innerHTML=tText1.innerHTML;

22tText1.innerHTML=temp;

23};

24}

25window.onload=function(){

26submitbtn();

27}

28//]]>

29

30

31

32

33

34

35321445

36

37

38

39123133

40

41

42

43

44

45在一般编程语言中,参数都是"传值",假设一个C函数的原型是intFun(intvalue);

当你调用这个函数时,Fun函数首先会在自己的函数栈上copy一份参数,就是这个函数的副本,当你在Fun外部修改value值,并不会影响Fun内部的value.

而Javascript的内嵌函数很特殊,它并不会copy一个参数副本,所有函数公用一套参数,所以你在函数外部修改了参数值,函数内部也会受影响.

这就是为什么你的show函数,它的z参数是最后一个值,因为每一次循环,z都被更改了.传值和传址的问题

javascript面试题滤镜filter:

alpha(opacity=80,finishOpacity=0,style=1,startX=70);

2008-09-1919:

51

题1.给Array原型添加一个方法,这个方法接受一个参数,如果这个参数在数组中存在那么就把它从数组中删除。

题2.对下面这个对象进行克隆.varstudent={name:

"zhang3",sno:

"20080328",age:

"20",call:

function(){alert(this.name+this.sno+this.age);}};

题3.写一个简单form表单,当光标离开表单的时候把表单的值发送给后台(使用AJAX)。

类似于163邮箱(

试题一:

Array.prototype.a=function(x){

for(vari=0;i

  if(this[i]==x)

  this.splice(i,1);

  }

returnthis;

}

试题二:

vara=function(x){

varobj={};

for(variinx){

obj[i]=x[i];

}

returnobj;

}

试题三:

    name

address

Alpha滤镜//CSS例

.menu{background:

#3399ff;width:

100;height:

300;

filter:

alpha(opacity=80,finishOpacity=0,style=1,startX=70);}

语法:

{FILTER:

ALPHA(opacity=opacity,finishopacity=finishopacity,style=style,startx=startx,

starty=starty,finishx=finishx,finishy=finishy)}

"Alpha"属性是把一个目标元素与背景混合。

设计者可以指定数值来控制混合的程度。

这种“与背景混合”通俗地说就是一个元素的透明度。

通过指定坐标,可以指定点、线、

面的透明度。

他们的参数含义分别如下:

"opacity"代表透明度水准。

默认的范围是从0到100,他们其实是百分比的形式。

也就是说,0代表完全透明,100代表完全不透明。

”finishopacity"是一个可选参数,

如果想要设置渐变的透明效果,就可以使用他们来指定结束时的透明度。

范围也是0到100。

"style"参数指定了透明区域的形状特征。

其中0代表统一形状、1代表线形、2代表放射状、

3代表长方形。

”STARTX“和”STARTY“代表渐变透明效果的开始X和Y坐标。

”FINISHX“和”

FINISHY“代表渐变透明效果结束X和Y的坐标。

enabledEnabled设置或检索滤镜是否激活。

styleStyle设置或检索透明渐变的样式。

opacityOpacity设置或检索透明渐变的开始透明度。

finishOpacityFinishOpacity设置或检索透明渐变的结束透明度。

startXStartX设置或检索透明渐变开始点的水平坐标。

startYStartY设置或检索透明渐变开始点的垂直坐标。

finishXFinishX设置或检索透明渐变结束点的水平坐标。

finishYFinishY设置或检索透明渐变结束点的垂直坐标。

    

javascript试题

2008-06-1116:

24

一、单选题   

  1、以下哪条语句会产生运行错误:

(A)   

  A.var   obj   =   (  

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1