js面试题

来源:互联网 发布:淘宝代销如何看进价 编辑:程序博客网 时间:2024/06/01 10:40

更多面试题请狠狠的点击 下载


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

a.var obj=();//语法错误     b.var obj=[];//创建数组    c.var obj={};//创建对象,JS中大括号表示创建对象,var obj={id:1,name:’jacky’} alert(obj.name)   

 d.var obj=//;//创建正则表达式

2、以下哪个单词不属于javascript保留字:(b

a.with;         b.parent;        c.class;         d.void;

说明:abstract    boolean       break      byte     

case        catch         char         class      const      continue

default     do            double        else        extends   false       final         finally      float      for        function     goto

 if          implements    import       in          instanceof     int

 interface   long   native      new           null    package     private       protected    public  return short       static        super        switch     synchronized  this        throw    throws       transient      true        try     var    void    while       with

3、请选择结果为真的表达式:(c

a.null instanceof Object;          b.null= = =undefined;

c.null= =undefined;              d.NaN= =NaN;

4、请选择对javascript理解有误码的:(a,b,c

a.Jscriptjavascript的简称;

b.javascript是网景公司开发的一种Java脚本语言,其目的是为了简化Java的开发难度;

c.FireFoxIE存在大量兼容性问题的主要原因在于他们对javascript的支持不同上;

d.AJAX技术一定要使用javascript技术//存在争议

5foo对象有att属性,那么获取att属性的值,以下哪些做法是可以的:(a,c,e

a.foo.att      b.foo(“att”)      c.foo[“att”]      d.foo{“att”}    e.foo[“a”+”t”+”t”]

6、在不指定特殊属性的情况下,哪几种HTML标签可以手动输入文本:(a,b

a.<textarea></textarea>   b.<input type=’text’>   c.<input type=’hidden’>   d.<div></div>

7、以下哪些是javascript的全局函数:(a,b,c

a.escape      b.parseFloat      c.eval      d.setTimeout      e.alert

8、关于iframe表述正确的有:(a,b,c,d

a.通过iframe,网页可以嵌入其他网页内容,并可以动态更改

b.在相同域名下,内嵌的iframe可以获取外层网页的对象

c.在相同域名下,外层网页脚本可以获取iframe网页内的对象

d.可以通过脚本调整iframe的大小

9、关于表格表述正确的有:(a,b,c,d,e

a.表格中可以包含TBODY元素      b.表格中可以包含CAPTION元素

c.表格中可以包含多个TBODY元素  d.表格中可以包含COLGROUP元素

e.表格中可以包含COL元素

10、关于IEwindow对象表述正确的有:(a,c,d

a.window.opener属性本身就是指向window对象 

b.window.reload()方法可以用来刷新当前页面;

c.window.location=”a.html”window.location.href=”a.html”的作用都是把当前页面替换成a.html    

d.定义了全局变量g;可以用window.g的方式来存取该变量

11、谈谈javascript数组排序方法sort()的使用,重点介绍sort()参数的使用及其内部机制。

答:Sort的实现的功能类似JAVA的比较器,数据排序从多维数组的第一维开始排序,可以自己的定义排序方法。

12、简述DIV元素和SPAN元素的区别。

答:1)所谓块元素,是以另起一行开始渲染的元素,行内元素则不需另起一行

2DIV指定渲染HTML的容器,span指定内嵌文本容器

13、结合text这段结构,谈谈innerHTMLouterHTMLinnerText之间的区别。

答:W3C只支持innerHTML,其他都是微软的规定(outerHTML,outerTextinnerText只有微软的IE可用,其它浏览器如firefox,mozilla等)都不支持,必须用其他方法实现

 

innerHTML对象里面的HTML

outerHTML包括对象和里面的HTML

innerText对象里面的文本

14、说几条XHTML规范的内容(至少3条)。

答:1)属性名称必须是小写    2)属性值使用双引号

3)属性简写是不允许的      4)用id属性来替代原来的name属性

15、对web标准化(或网站重构)知道哪些相关的知识,简述几条你知道的web标准。

答:符合WEB标准的网站应该主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的网站标准 也分三方面:结构化标准语言,主要包括XHTMLXML;表现标准语言主要包括CSS;行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。这些标准大部分由W3C组织(什么是W3C组织)起草和发布,也有一些是其他标准组织制订的标准,比如 ECMAEuropean Computer Manufacturers Association)的ECMAScript标准。

16form中的input有哪些类型?各是做什么处理使用的?

答:Text  radio  checkbox  file  button  image  submit  reset  hidden  

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

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

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

Submit继承了button

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

Input  type=submit按回车提交表单

Button提交的是innerTEXT

17table标签中bordercellpaddingtd标签中colspanrowspan分别起什么作用?

答:Border边界;Cellpadding边距,是指单元格内文字与边框的距离;Cellspacing两个单元格之间的距离;Colspan跨列数;Rowspan跨行数

18form中的input可以设置readonlydisable,请问这两项属性有什么区别?

答:Readonly不可编辑,但可以选择和复制;只能对text,password,textarea起作用;随着表单的提交传递元素中的值

Disable不能编辑复制选择;对所有表单元素都起作用;不随表单的传递而传值

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

答: alert()confirm()prompt()

20、浏览器对JS脚本的解释顺序?

答: JScript 的解释是 Web 浏览器的 HTML 语法分析处理的一部分。因此,如果在文档的 <HEAD> 标识中放置了一个脚本,则将在检查所有的 <BODY> 标识之前加以解释。如果在 <BODY> 标识中将创建对象,但由于在分析处理 <HEAD> 标识时这些对象尚不存在,因而不能被脚本操作。

21、如何为语句设定默认对象(通常用来缩短特定情形下必须写的代码量,使全码变得更短且更易读)?在下面的例子中,请注意Math的重复使用:

x=Math.cos(3*Math.PI)+Math.sin(Math.LN10);

y=Math.tan(14*Math.E);

答:with(Math){x=cos(3*PI)+sin(LN10); y=tan(14*E);}

22、列举JS的三种主要数据类型、两种复合数据类型和两种特殊数据类型?

答:主要数据类型:数值数据类型、字符串数据类型、布尔型

两种复合数据类型:对象、数组

特殊数据类型:nullundefined

23、程序中捕获异常的方法?

Try{

    foo.bar();

}catch(e){

   alert(e.name+”:”+e.message);

}

24、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框

<html>

<head>

<script>

   function foo()

{

   var rg = document.getElementsByName("radioGroup");   
        for(var i=0;i< rg.length;i++){   
          if(rg[i].checked){   
           alert("你选择了第"+(i+1)+"个单选框");   
           }   
         }   
         return false;   
       }

</script>

</head>

<body>

<form name=’form1’>

   <input type=’radio’ name=’radioGroup’;>

<input type=’radio’ name=’radioGroup’;>

<input type=’radio’ name=’radioGroup’;>

<input type=’radio’ name=’radioGroup’;>

<input type=’radio’ name=’radioGroup’;>

<input type=’radio’ name=’radioGroup’;>

<input type=’radio’ name=’radioGroup’;>

</form>

</body>

</html>

25、点击按钮时,如何实现两个td的互换(注:用JS实现此功能)

<HTML><HEAD>

  <script>

    function  submitbtn()

{

  var tText1=document.getElementById('txt1');

  var SubmitBtn1=document.getElementById('submitBtn1');

  var tText2=document.getElementById('txt2');

  var SubmitBtn2=document.getElementById('submitBtn2');

  SubmitBtn1.onclick=function()

  {

    var temp=tText1.innerHTML;

tText1.innerHTML=tText2.innerHTML;

tText2.innerHTML=temp;

  }

  SubmitBtn2.onclick=function()

  {

    var temp=tText2.innerHTML;

tText2.innerHTML=tText1.innerHTML;

tText1.innerHTML=temp;

  }

}

window.onload=function()

{

  submitbtn();

}

 

  </script></HEAD><BODY>

  <table width='200' border=1 cellpadding=0 cellspacing=0>

    <tr>

  <td id='txt1'>kkkk</td>

  <td><input type='submit' id='submitBtn1'></td>

</tr>

<tr>

  <td id='txt2'>dddd</td>

  <td><input type='submit' id='submitBtn2'></td>

</tr>

<tr>

</tr>

  </table></BODY></HTML>

26写一个函数,返回指定的英文句子中的每个单词及其字符的起止位置
例:”The rain in Spain falls mainly in the plain.”
应依次返回”The 0-3”, ”rain 4-8” … … ”plain 38-43”

<script>

    var a = 'The rain in Spain falls mainly in the plain';

    var b = /\b\w+\b/g;

    var f = 0

    while( (e = b.exec(a) )!= null){

         document.write(e + " " + f + "-" + b.lastIndex);

         f = b.lastIndex + 1;

     }

</script>

27、构造一个自定义对象,实现对一个矩形的对象化,要求:
a) 描述矩形的标识(name)
b) 描述矩形的颜色(color)
c) 描述矩形的宽度(width)
d) 描述矩形的高度(height)
e) 提供获取矩形面积的方法(getArea())
f) 写出构造函数的完整代码
g) 给出调用的实例代码

<script>

    function reg(name,color,width,height)//构造函数

{

  this.name=name;

  this.color=color;

  this.width=width;

  this.height=height;

  function getMJ()//私有方法

  {

    return width*height;

  }

  document.write('名字为:'+name+'<br>颜色为:'+color+'<br>面积为:'+getMJ());

}

    reg('s2','yellow',8,9);

  </script>

28JS的两种变量范围有什么不同?

答:全局变量:整个系统运行期间有效访问控制的变量,通常是在一个JS代码开头定义

局部变量:一般指在{}范围内有效的变量,也就是语句块内有效的变量

29、程序运行完毕后,K等于几?

for(i=0,j=0;i<10,j<6;i++,j++;){

   k=i+j;

}

答:K10

30、写出函数DateDemo的返回结果,系统时间假定为今天

functionDateDemo(){

var d,s=’今天日期是:’;

d=new Date();

s+=d.getMonth()+’/’;

s+=d.getDate()+’/’;

s+=d.getYear();

return(s);

答:今天日期是  月(月份的取值为0-11//

 

原创粉丝点击