Javascript综合复习试题大全和答案.docx
《Javascript综合复习试题大全和答案.docx》由会员分享,可在线阅读,更多相关《Javascript综合复习试题大全和答案.docx(28页珍藏版)》请在冰豆网上搜索。
Javascript综合复习试题大全和答案
Javascript综合复习题【共116题】
每份考卷中javascript只占一半。
题型和分数如下:
1.单选题:
10题*1分=10分
2.填空题:
5题*1分=5分
3.程序阅读题:
2题*4分=8分
4.程序实现题:
2题*5分=10分
5.简答题:
3题*5分=15分
合计:
48分,共22题。
剩余52分,23题是另一门课程。
【提示:
本综合复习题的目的是让同学们多见识各种题目。
选择题、填空题以及
程序阅读题可以仔细做,对于程序实现和简答题建议先理解再记忆,切记死背答
案。
】
第一部分:
单选题
1.Javascript中,以下哪条语句一定会产生运行错误?
答案(B)
A、var_变量=NaN;B、var0bj=[];C、varobj=//;D、varobj
={};
2.以下两个变量a和b,a+b的哪个结果是NaN?
答案(C)
A、vara=undefind;b=NaN
....
B、vara=‘123’;b=NaN
C、vara=undefined,b=NaN
D、vara=NaN,b='undefined'
3.vara=10;b=20;c=4;++b+c+a++以下哪个结果是正确的?
答案
(B)
A、34
B、35
C、36D、37
4.
Javascript
中,
以下代码运行后变量
y的值是:
答案(
D
)
varx=[‘abcde’,
123456];
vary=typeof
typeof
x[1];
A、"function"
B、"object"
C、"number"
D、"string"
5.
Javascript
中,
以下那两个变量的值不是==:
答案(
B)
A、vara=0,b=-0;
B、vara=NaN,b=NaN;
C、var
a=null,
b=undefined;
D、vara=[],b=false;
6.Javascript中,以下声明变量语句中哪个不正确?
答案(D)
A、varaa;B、varbb=3;cc='good';C、vardd=ee=100;D、var
ff=3,gg='he'sgood';
7.Javascript中,foo对象有att属性,那么以下获取att属性值的表达式哪个是错误的?
答案(C)
A、foo.attB、foo["att"]C、foo{"att"}D、foo["a"+"t"+"t"]
8.Javascript中,以下代码运行后变量y的值是:
答案(B)
varx=[typeofx,typeofy][1];
....
vary=typeoftypeofx;
A、"number"B、"string"C、"undefined"D、"object"
9.下面哪个javascript变量名称不合法(D)
A.stringB.lengthC.非法字符D.this
10.下面哪个描述不正确(B)
A.NaN!
=nullB.NaN==NaNC.{}!
=falseD.null!
=false
11.vararr=newArray(newArray(9,0,3,4,5),['a','b','c'],new
Array(2,9,0,6));则arr[1][3]=(D)
A.cB.6C.4D.undefined
12.有如下代码:
vararr=newArray(9);
arr[0]=1;
arr[2]=2;
该数组的length属性值为(D)
A、2B、10C、8D、9
13.有一个submit按钮,在这个按钮控件上添加哪个事件不起作用?
(D)
A.onMouseoutB.onmouseoverC.onclickD.
onsubmit
14.有一个变量vara=typeofstring+100+50+NaN,以下哪个是alert(a)
的结果?
(C)
A.function150NaNB.function10050NaNC.
undefined10050NaND.NaN
....
15.以下代码,哪个结果是正确的?
(A)varstr='123abc';
str+=str.replace('abc','');
alert(str);
A.123abc123B.123abcC.123D.abc
16.以下哪个结果是正确的?
(C)vara=100,b="100.5a6",c="100.1";
alert(Math.max(a,b,c));
A.100B.100.1C.NaND.undefined
17.以下哪个语句能正确弹出结果:
(D)
A.alert(newDate(2011,12,25).getDay());
B.alert(newDate(2011,12,25,5).getDay());
C.alert(newDate(2011,12,25,5,5,9).getDay());
D.以上三个结果都正确
18.以下代码正确的运行结果是?
(C)
vararr=[0,1,2,3,4,5,6];
arr2=arr.slice(2,5);
alert(arr2);
A.1,2,3B.1,2,3,4C.2,3,4D.2,3,4,5
19.下面哪个描述不正确(B)
A.NaN!
=nullB.null!
=undefinedC.{}!
=falseD.null!
=false
20.vara=newArray(newArray(9,0,3,6,5),newArray(2,9,0,6));则
....
a[0][3]=(B)
A.3B.6C.5D.0
21.有一个变量vara=(100+50)+undefined+NaN,以下哪个是alert(a)的结
果?
(B)
A.150undefinedNaNB.NaNC.150undefinedD.
10050undefinedNaN
22.以下代码,哪个结果是正确的?
(C)
vara='123.5abc',b='100abc';
alert(parseInt(a)+Number(b));
A.123100abcB.123.5abc100abcC.NaND.223
23.以下哪个结果是正确的?
(B)vara=100,b="100.56",c="80";alert(Math.max(a,b,c));
A.100B.100.56C.NaND.80
24.以下哪个正则表达式符号的描述正确?
(C)
A.*等同{1,}
B.+等同{0,}
C.?
等同{0,1}
D.\W等同[0-9A-Za-z_]
25.请选择结果为真的表达式:
(C)
A.typeofnull!
="object"
B.null===undefined
....
C.1=="01.00"
D.NaN==NaN
26.以下哪个单词不属于javascript保留字:
(C)
A.with
B.instanceof
C.base
D.void
27.设置下拉列表框中某项被默认选中的属性是(C)
A.checkedB.checkC.selectedD.select
28.nodeType属性可用于获取节点类型,如果返回值为1,则表明该节点为(B)。
A.文本节点B.元素节点C.属性节点
29.javascript的基本数据类型不包括(B)
A.字符串B.数组C.数值D.布尔
30.要检测值是否为NaN,应使用(D)函数。
A.NumberB.parseIntC.IsNaND.isNaN
31.为获取页面中多个同名对象,应使用document的(B)方法;
A.getElementById()B.getElementsByName()C.
getElementsByTagName()
....
32.(A)属性用于获取HTML文件的根节点。
A.documentElementB.rootElementC.documentNode
D.documentRoot
第二部分:
填空题
1.Javascript中,如果已知HTML页面中的某标签对象的id=”username”,
用____document.getElementById(‘username’)____方法获得该标签
对象。
2.
typeof运算符返回值中有一个跟
javascript数据类型不一致,它是
________”function”_________。
3.
定义了一个变量,但没有为该变量赋值,如果
alert该变量,javascript
弹
出的对话框中显示___undefined______。
4.JavaScript有两种复合数据类型:
___数组___、___对象____。
5.JavaScript有两种引用数据类型:
___数组___、___对象____。
6.JavaScript有两种特殊数据类型:
_____null____、___undefined_。
7.document中的选择器有:
____getElementById(),getElementsByName(),getElementsByTagName()_。
....
8.
window
对象中定时器有
setInterval()、setTimeout()。
9.
typeof
NaN,typeof
Array的结果分别是_____”number”,
“object”_____。
10.
typeof[1,2,3],typeofundefined
的结果分别
是
_____”object”,”undefined”__。
11.
用javascript将ID为mydiv的标签元素的样式名设置为“bigfont”:
______document.getElementById(‘mydiv’).className=’bigfont’;_
__。
12.window的______onload____事件在浏览器完成页面加载后立即触发。
13.(continue)语句结束本次循环,(break)命令可以终止循环的
运行,然后继续执行循环之后的代码。
14.
Javascript
里Math
的(random()
)方法返回介于
0和1
之间的伪随
机数。
15.
获得焦点的事件(
onfocus
),失去焦点的事件(
onblur
)。
16.
Javascript
通过(
setTimeout
)
延迟指定时间后,去执行某程序。
17.
Javascript
里String对象通过(
indexOf())方法取第一次出现子字符
串的字符位置。
18.
通过Javascript使页面后退的代码是(
history.back()
)。
19.
Javascript
里取字符串的长度是(
length),取数组的长度是
(length
)
20.
Javascript
里若已知元素id,通过(
getElementById()
)
....
可以获得一个元素。
21.
Javascript里若已知元素name,通过(getElementsByName()
)可
以获得一组元素。
22.
html页面中有一个ul,id为“menulist”,name为“mymenu”,这个ul
标签中有五个li标签,通过(
getElementsByTagName())
可以获得这个ul标签中的五个li元素。
23.Javascript弹出对话框的三个命令(alert())、(confirm())、(prompt())。
24.Javascript里字符串执行正则的方法是(match()),字符串里根据指定字
符切割的方法是(split())。
25.Select当选择发生变化触发的事件是(onchange),表单提交事件是
(onsubmit)。
第三部分:
程序阅读题
1.分析代码,得出正确的结果。
vara=10,b=20,c=30;
++a;
a++;
....
e=++a+(++b)+(c++)+a++;
alert(e);
弹出提示对话框:
77
2.阅读以下代码,请分析出结果:
vararr=newArray(1,3,5);
arr[4]='z';
arr2=arr.reverse();
arr3=arr.concat(arr2);
alert(arr3);
弹出提示对话框:
z,,5,3,1,z,,5,3,1
3.阅读以下代码,请分析出结果:
alert(Math.max(1,3,4,'10'));
alert(Math.max(1,3,4,'10abc'));
alert(Math.max(1,3,4,NaN));
alert(Math.max(1,3,4,undefined));
....
依次弹出提示对话框:
10,NaN,NaN,NaN
4.以下代码执行的结果是多少?
必须写出正确的结果和正确的原因。
vartotal=16.5;
varnumber=sum(5.50,5.01,5.99);
alert(total);
functionsum(n1,n2,n3){
total=Math.round(n1)+Math.ceil(n2)+Math.floor(n3);
returntotal;
}
弹出提示对话框:
17
5.以下程序运行后,结果是什么?
varfilepath='D:
\abc.doc';
varextension=filepath.substr(filepath.lastIndexOf('.'));
alert(extension);
弹出提示对话框:
“.doc”
....
6.以下代码执行的结果是多少?
请分析为什么?
vartotal=10;
varnumber=square(5);
alert(total);
functionsquare(n){
total=n*n;
returntotal;
}
弹出提示对话框:
25
7.以下程序运行后,弹出的值是多少。
vara=10;
functionfun(a){
a=5;
}
fun(a);
alert(a);
....
弹出提示对话框:
10
8.分析以下代码,写出结果。
vara="15.15abc",b='10.15',c='10.0abc';
alert(parseInt(a)+Number(b)+parseFloat(c));
弹出提示对话框:
35.15
9.分析以下代码,写出结果。
vara="15.5",b='10';
varc="parseInt(a)",d="Number(b)";
with(document){
write(eval("parseInt(a)+Number(b)")+"
");
write(eval("c+d")+"
");
write(eval(c)+eval(d)+"
");
}
页面输出:
25
parseInt(a)Number(b)
25
....
10.分析以下代码,写出结果。
vara=100,b=50,c;
vard=Number('100.abc');
vare=typeofMath;
alert(a+b+c+e+d);
弹出提示对话框:
NaNobjectNaN
11.分析以下代码,写出结果。
window.onload=function(){
vara=document.getElementById('mydiv');
alert(a.lastChild.previousSibling.firstChild.nodeValue);
}
....
aaa
xxx
bbb
ccc
弹出提示对话框:
bbb
第四部分:
程序实现题
1.
2.
3.
4.
写一个字符串反转函数,实现字符串倒序。
请借助Array内置对象的相关方法,实现字符串倒序排列。
写一个函数,能获取文件后缀;
请将字符串open_my_door这种形式,转成OpenMyDoor的形式。
5.写一个实现字符串首字母大写的函数;
6.写一个函数,实现去除字符串左右空格;
7.写一个获取斐波那契数列前N项的函数,返回一个数组,将数列中的每个数值存入数组;
....
8.写一个获取阶乘的函数,返回一个字符串,其中是阶乘表达式和结果;
9.用递归的思想,写一个求取n的阶乘的函数。
10.写一个函数,能获取两个日期相差天数;
11.写一个函数,能求取某个日期是星期几;
12.利用正则和键盘事件,写一个只能输入数字,如果输入非数字,当按键抬起,会自动消失的input文本控件;
13.利用正则和鼠标事件,写一个过滤HTML标签的文本域控件,如果在文本域
中输入html标签,当光标一旦离开文本域,则其中所有html会自动消失;
14.写一个用户注册表单中对用户名的验证。
要求是:
用户名不可以为空,用户名必须是3-15位中文。
15.写一个点击“大”、“中”、“小”三个超链,实现页面部分文字随之分别为:
18,14,12号字体的切换效果。
16.写一个当鼠标移入和移出,图片切换的效果。
17.假设a.html和b.html在同一个文件夹下面,请在a.html页面中使用javascript代码实现:
在浏览器中打开a.html五秒钟后,自动跳转到b.html
页面。
18.假设a.html和b.html在同一个文件夹下面,请在a.html页面中使用javascript代码实现:
点击这个a.html中的“打开”,弹出一个新窗口。
该窗口宽500px,高度为450px,该窗口中显示的页面是b.html页面。
19.求取1-50之间的随机数,不可以出现重复。
如果不足两位,则在该数字前补足“0”。
20.实现一个在页面指定位置,出现一个跳动的时钟效果。
....
21.写代码,能实现对多选项至少勾选一项的验证;
22.实现多选项的全选、取消全选的效果;
23.实现多选项的全选、反选的效果。
24.利用DOM知识,实现获取dl标签下dd标签中的内容,也就是希望得到“xxx”。
不允许对现有的HTML代码做任何改动。
aaa
xxx
bbb
ccc
25.如果2038年12月25日是世界末日,那么计算一下你还能活多少天,写出代码?
26.写一段代码,能实现让页面中指定层隐藏。
需要写出html代码和javascript
代码。
第五部分:
简答题
1.javascript中有哪几种