js基础

一、单选题

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

A.varobj=();

B.varobj=[];//定义一个数组

C.varobj={};//定义一个对象

D.varobj=//;//定义一个正则表达式

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

A.with

B.parent

C.class

D.void

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

A.nullinstanceofObject

B.null===undefined

C.null==undefined

D.NaN==NaN

说明:

==用于一般比较,===用于严格比较,==在比较的时候可以转换数据类型,===严格比较,只要类型不匹配就返回flase。

举例说明:

"1"==true

类型不同,"=="将先做类型转换,把true转换为1,即为"1"==1;

此时,类型仍不同,继续进行类型转换,把"1"转换为1,即为1==1;

此时,"=="左右两边的类型都为数值型,比较成功!

如果比较:"1"===true左侧为字符型,右侧为bool布尔型,左右两侧类型不同,结果为false;

如果比较:"1"===1左侧为字符型,右侧为int数值型,左右两侧类型不同,结果为false;

如果比较:1===1左侧为int数值型,右侧为int数值型,左右两侧类型相同,数值大小也相同,结果为true;

如果比较:1===2左侧为int数值型,右侧为int数值型,左右两侧类型相同,但数值大小不同,结果为false;

简而言之就是"=="只要求值相等;"==="要求值和类型都相等

二、不定项选择题

4、请选择对javascript理解有误的:(ABCD)

A.JScript是javascript的简称、

B.javascript是网景公司开发的一种Java脚本语言,其目的是为了简化Java的开发难度(没有什么关系)。

C.FireFox和IE存在大量兼容性问题的主要原因在于他们对javascript的支持不同上

D.AJAX技术一定要使用javascript技术

说明:

Java、javascript、JS和JScript

首先,这三者没有必然的联系,它们是完全不同的事物,它们是分别由不同公司开发的,在函数方面有相同的地方,也有很多不同之处。Java是由Sun公司创立、开发;javascript则是Sun和Netscape公司共同开发的产品;JScript是微软对ECMA262语言规范的一种实现。这三者的共同点是,语法与C语言相似。

JS是javascript的简称。

JScript应用于ASP,运行于服务器端。而Java、javascript都是运行于客户端。Sun公司后来又推出了JSP,以Java语言为基础,运行于服务器端。运行于服务器端的网页是动态网页,所以以JScript为基础的ASP、以Java为基础的JSP是动态网页,而Java、javascript则是静态网页。

ajax是一种概念,它是几种技术的综合运用(javascript,xml),ajax可以用在任何动态语言开发的网站里(asp,asp.net,jsp,php等)。它不为微软专有,不过呢,微软为asp.net专门开发了一个ajax框架。

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

A.foo.att

B.foo(“att”)

C.foo[“att”]

D.foo{“att”}

E.foo[“a”+”t”+”t”]

6、以下哪些是javascript的全局函数:(ABC)

A.escape

B.parseFloat

C.eval

D.setTimeout

E.alert

说明:

全局属性和函数可用于所有内建的JavaScript对象。

顶层函数(全局函数)

FF:Firefox,IE:InternetExplorer

函数

描述

FF

IE

decodeURI()

解码某个编码的URI。

1

5.5

decodeURIComponent()

解码一个编码的URI组件。

1

5.5

encodeURI()

把字符串编码为URI。

1

5.5

encodeURIComponent()

把字符串编码为URI组件。

1

5.5

escape()

对字符串进行编码。

1

3

eval()

计算JavaScript字符串,并把它作为脚本代码来执行。

1

3

getClass()

返回一个JavaObject的JavaClass。

isFinite()

检查某个值是否为有穷大的数。

1

4

isNaN()

检查某个值是否是数字。

1

3

Number()

把对象的值转换为数字。

1

parseFloat()

解析一个字符串并返回一个浮点数。

1

3

parseInt()

解析一个字符串并返回一个整数。

1

3

String()

把对象的值转换为字符串。

1

unescape()

对由escape()编码的字符串进行解码。

1

3

顶层属性(全局属性)

FF:Firefox,IE:InternetExplorer

方法

描述

FF

IE

Infinity

代表正的无穷大的数值。

1

4

java

代表java.*包层级的一个JavaPackage。

NaN

指示某个值是不是数字值。

1

4

Packages

根JavaPackage对象。

undefined

指示未定义的值。

1

5.5

7、关于IFrame表述正确的有:(ABCD)

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

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

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

D.可以通过脚本调整IFrame的大小

8、关于表格表述正确的有:(ABCDE)

A.表格中可以包含TBODY元素

B.表格中可以包含CAPTION元素

C.表格中可以包含多个TBODY元素

D.表格中可以包含COLGROUP元素

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

表格标签

表格

描述

<table>

定义表格

<caption>

定义表格标题。

<th>

定义表格的表头。

<tr>

定义表格的行。

<td>

定义表格单元。

<thead>

定义表格的页眉。

<tbody>

定义表格的主体。

<tfoot>

定义表格的页脚。

<col>

定义用于表格列的属性。

<colgroup>

定义表格列的组。

9、关于IE的window对象表述正确的有:(ACD)

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

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

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

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

三、问答题:

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

sort的实现的功能类似JAVA的比较器,数据排序从多维数组的第一维开始排序

可以自己定义排序方法,很不多的函数

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

DIV有回车,SPAN没有

DIV是块元素,SPAN是内嵌元素。块元素相当于内嵌元素在前后各加一个<br>换行。其实,块元素和行内元素也不是一成不变的,只要给块元素定义display:inline,块元素就成了内嵌元素,同样地,给内嵌元素定义了display:block就成了块元素了。

DIV(division)是一个块级元素,可以包含段落、标题、表格,乃至诸如章节、摘要和备注等。而SPAN是行内元素,SPAN的前后是不会换行的,它没有结构的意义,纯粹是应用样式,当其他行内元素都不合适时,可以使用SPAN。

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

innerHTML对象里面的HTML,outerHTML包括对象和里面的

innerText对象里面的文本

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

属性加引号,不能有不匹配的标签,加定义

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

网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的网站标准也分三方面:结构化标准语言,主要包括XHTML和XML;表现标准语言主要包括CSS;行为标准主要包括对象模型(如W3CDOM)、ECMAScript等。

6、vara=10;varb=20;varc=10;alert(a=b);alert(a==b);alert(a==c);结果是?

结果:20,true.false;

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

textradiocheckboxfilebuttonimagesubmitresethidden

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

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

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

submit继承了button

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

INPUTtype=submit按回车提交表单

button提交的是innerTEXT

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

border边界

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

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

colspan跨列数

rowspan跨行数

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

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

disable不能编辑复制选择

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

alert

confirm

prompt

四、编程题:

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

Html代码收藏代码

<html>

<head>

<script>

functionfoo()

{

//在此处添加代码

varrg=document.getElementsByName("radioGroup");

for(vari=0;i<rg.length;i++)

{

if(rg[i].checked)

{

alert("你选择了第"+(i+1)+"个单选框");

}

}

returnfalse;

}

</script>

</head>

<body>

<formname="form1"onsubmit="foo();">

<inputtype="radio"name="radioGroup"/>

<inputtype="radio"name="radioGroup"/>

<inputtype="radio"name="radioGroup"/>

<inputtype="radio"name="radioGroup"/>

<inputtype="radio"name="radioGroup"/>

<inputtype="radio"name="radioGroup"/>

<inputtype="submit"/>

</form>

</body>

</html>

2、填充注释部分的函数体,使得foo()函数调用弹出”成功”的对话框。代码应尽量简短。

functionreverse(str){

//在此处加入代码,完成字符串翻转功能

returnstr.split(",").reverse().join(",");

}

Html代码收藏代码

<html>

<head>

<script>

functionfoo()

{

varstr=reverse('a,b,c,d,e,f,g');

alert(str);

if(str=='g,f,e,d,c,b,a')

alert('成功');

elsealert('失败');

}

functionreverse(str)

{

//在此处加入代码,完成字符串翻转功能

varspl=str.split(',');

varnewstr="";

for(i=spl.length-1;i>=0;i--)

{

newstr+=spl[i]+',';

}

newstrnewstr=newstr.substring(0,newstr.length-1)

returnnewstr;

}

</script>

</head>

<body>

<inputtype="button"value="str"onclick="foo()"/>

</body>

</html>

相关推荐