JS基础阶段考试试题.docx
《JS基础阶段考试试题.docx》由会员分享,可在线阅读,更多相关《JS基础阶段考试试题.docx(16页珍藏版)》请在冰点文库上搜索。
JS基础阶段考试试题
H5-JS基础试题
姓名:
班级:
成绩:
一、单选题(每小题1分,20小题,共60分)
1、null,undefined,”string",20,true和false的共同点是()
A、都是对象
B、都有相同的实例属性
C、都是原始值
D、都是函数
2、下列哪个正确的引入了myScript.js()
A、
B、
C、
D、
3、下列哪个符号不是逻辑运算符()
A、%
B、||
C、&&
D、!
4、以下()为JavaScript声明变量的语句。
A、dimx;
B、intx;
C、varx;
D、x;
5、如下代码输出的结果是()
console.log(1+"2"+"2");
console.log(1++"2"+"2");
console.log("A"-"B"+"2");
console.log("A"-"B"+2);
A、122122NaNNaN
B、12232NaNNaN2
C、12232NaN2NaN
D、12232NaN2NaN2
6、执行下面语句后c的值是()
vara=2,b=1,c=3;
if(a
if(b<0)
c=0;
else
c++;
A、1B、2C、3D、4
7、哪个操作符根据值和类型来比较变量()
A、==
B、===
C、=
D、这些都不是
8、vara=false;varx=a?
“A”:
“B”;x的值是()
A、A
B、B
C、TRUE
D、FALSE
9、程序段如下:
varx=newBoolean(false);
if(x){
alert('hi');
}
vary=Boolean(0);
if(y){
alert('hello');
}
最后的显示结果是()
A、hi
B、hihello
C、hello
D、不显示
10、哪个关键字用来定义条件语句的可选分支()
A、or
B、else
C、altenative
D、next
11、下列选项中哪一个等价于()
if(a){
x=b;}
else{
x=c;}
A、x=a?
b,c;
B、x=a:
b?
c;
C、x=a?
b:
c;
D、x=a?
b;c;
12、执行以下程序段后,x的值是()
varx=0;
switch(++x){
case0:
++x;
case1:
++x;
case2:
++x;
}
A、1B、2C、3D、4
13、varx=typeofnewString("abc");x的值是()
A、"string"B、undefinedC、"object"D、"number"
14、Number(null);此代码将返回()
A、NullB、1C、undefinedD、0
15、解读下面的js代码,计算的结果是()
varnum=10;
if(5==num/2&&(2+2*num).toString()==”22”){
document.write(true)
}
A、TRUEB、FALSEC、5D、22
16、下面哪个变量类型在javascript中不存在()
A、objectB、booleanC、integerD、number
17、以下不属于Javascript原始类型的是()
A、stringB、numberC、functionD、boolean
18、下面语句varx=-10,y;x=2*x;y=x+15;计算后y的结果是()。
A、-15B、10C、-5D、5
19、document.write(a+2);vara=10;a=a+2.页面上显示的值是()
A、10.0
B、12.0
C、NaN
D、undefined
20、分析下面的JavaScript代码,经过运算后m的值为()
x=11;
y=“number”;
m=x+y;
A、number
B、11.0
C、11number
D、程序报错
21、结束本次循环,进入下一次循环的关键字是()
A、continue
B、break
C、return
D、end
22、以下程序运行结束正确的是()
vara=3;
varb=4;
varc=5;
console.log(a>b?
a:
c);
A、3B、4C、5D、b
23、运行下面运行程序
functionprint(){
varx=1;
if(x=='1')
console.log('One');
if(x==='1')
console.log('Two');
}
print();
最后返回的结果是()
A、oneB、1C、twoD、2
24、下列JavaScript的循环语句中,正确的是()
A、if(i<10;i++)
B、for(i=0;i<10)
C、fori=1to10
D、for(i=0;i<=10;i++)
25、下列不是分支语句使用的关键字是()
A、case
B、if
C、else
D、for
26、while语法的正确使用是()
A、whilei=(1<>10)
B、while(i<=10)
C、while(i<=10;i++)
D、whilei=1to10
27、functionf(y){
varx=y*y;
returnx;
}
for(x=0;x<5;x++){
y=f(x);
document.writeln(y);
}
输出的结果是()
A、01234
B、014916
C、019416
D、以上答案都不对
28、在循环结构中能强制退出循环的关键字是()
A、continue
B、break
C、return
D、end
29、下面代码的输出结果是()
bar();functionbar(){console.log('bar');}
A、TypeError
B、bar
C、undefined
D、SyntaxErrror
30、JavaScript中,函数是()
A、循环
B、操作符
C、对象
D、总是全局的
31、如下代码段中,
varx=0;while(______)x+=2;
要使while循环体执行10次,空白处的循环判断应写成()
A、x<10
B、x<=10
C、x<20
D、x<=20
32、如下代码段中,
for(vari=0,j=1;i<3;i++){
j+=i;
}
当该循环结束之后,j的值为()
A、1B、2C、3D、4
33、下列不是循环语句关键字的是()
A、for
B、do
C、while
D、switch
34、functionfn(a,b,c){
alert(arguments.length)
}
fn();
上面函数fn,调用函数fn的时候输出结果为()
A、undefined
B、3
C、0
D、程序会报错
35、求数学表达式"10"-(12+5).toString()的值是()
A、3B、-7C、10,125D、抛出异常
36、运行下面的代码之后,x的值是()
varx;x++;
A、1B、0C、NaND、undefined
37、varx='1'+2+3;
x的值是()
A、123B、15C、6D、语句会报错
38、向数组array追加一个元素10,正确的语法是()
A、array.shift(10);
B、array.unshift(10);
C、array.push(10);
D、array.slice(10);
39、vararr=[31,13,234,54,87];arr.sort();对数组arr进行遍历返回()
A、13,31,54,87,234B、13,234,31,54,87
B、234,87,54,31,13D、87,54,31,234,13
40、把一个数组从开头添加的方法是()
A、shift
B、unshift
C、pop
D、push
41、创建一个Date对象,值是1998年1月10日,正确的写法是()
A、newDate(1998,1,10);
B、newDate(0,10,1998);
C、newDate(1,10,1998);
D、newDate(1998,0,10);
42、以下定义数组语法错误的是()
A、vararray=[];B、vararray=newArray();
C、vararray=newArray(10);D、vararray={10,20,30};
43、varprimes=[2,1,,3,7,];primes.length的返回值是什么()
A、3B、4C、5D、6
44、vararray=[1,2,3,4,5,6];
array.splice(2,3);
alert(array);
以上代码运行的正确结果是()
A、1,2,6B、4,5,6C、1,2,5,6D、1,2,3
45、数组vararr=[“a”,”b”,”c”,”d”,”e”];arr.slice(2,4);alert(arr)弹框应弹出()
A、b,c,dB、c,dC、c,d,eD、a,b,c,d,e
46、varx=['Hello'];
alert(x*b)的结果是()
A、['Hello']
B、undefined
C、null
D、NAN
47、下面哪个选项实现了,复制一个数组得到新的数组,原数组的值不变
()
A、varnewArray=oldArray;
B、varnewArray=newArray(oldArray);
C、varnewArray=[oldArray];
D、varnewArray=oldArray.slice(0);
48、
vara=newArray("100","2111","41111");
for(vari=0;idocument.write(a[i]+"");
}
输出结果是()
A、100211141111B、012C、123D、124
49、JavaScript对象类型中,哪个能够在一个变量中存多个值()
A、functionB、vectorC、listD、array
50、执行下列代码之后,数组myArr的值是()varmyArr=[1,2,3,4,5];myArr.shift();
A、[1,2,3,4,5]B、[2,3,4,5]C、[]D、[1,2,3,4]
51、增加一个新值到数组的最后,下面哪一个选项是正确的?
A、arr[value]=length;
B、arr[arr.length()]=value;
C、arr[arr.length]=value;
D、arr.length=value;
52、数组下标出界,将返回()
A、缺省值,如0
B、给浏览器返回错误
C、数组中第一个或最后一个值
D、undefined
53、这个循环不对,问题在哪里()
varfoos=['a','b','c','d','e'];
varbars=['x','y','z'];
for(vari=0;i{
varfoo=foos[i];
for(vari=0;i{
varbar=bars[i];
/*somecodeusing`bar`*/
}
}
A、内循环重置了外面的for循环,每次都设了一个固定值,导致了无限循环
B、外循环在第一次循环后结束,因为很不幸这是ECMAScript规范的一个bug
C、未捕获的语法错误
D、没有bug,循环正确运行
54、数组对象的length属性一直是()
A、等于最后一个对象下标数加一
B、等于最后一个对象下标数减一
C、等于最后一个对象下标数
D、等于这个数组对象属性的数量
55、以下关于Array数组对象的说法不正确的是()
A、对数组里数据的排序可以用sort函数,如果排序效果非预期,
可以给sort函数加一个排序函数的参数
B、reverse用于对数组数据的倒序排列
C、向数组的最后位置加一个新元素,可以用pop方法
D、unshift方法用于向数组添加第一个元素
56、关于Javascript中数组的说法中,不正确的是()
A、数组的长度必须在创建时给定,之后便不能改变
B、由于数组是对象,因此创建数组需要使用new运算符
C、数组内元素的类型可以不同
D、数组可以在声明的同时进行初始化
57、下列运算符,哪个是用来判断一个对象是不是数组()
A、typeofB、breakC、instanceofD、switch
58、Javascript中,以下代码运行后变量y的值是:
()
varx=[‘abcde’,123456];vary=typeoftypeofx[1];
A、functionB、objectC、numberD、string
59、vara=[];以下向数组添加元素的方式正确的是()
A、a.pop(“zero”);B、a.push(“one”);
C、a.join(“two”);D、a.shift(“three”);
60.varundefs=[,,];undefs.length的返回值是()
A、0B、1C、2D、3
二、填空题(每空1分,共28分)
1、把JavaScript加入到HTML中有和两种方法。
2、JavaScript中的循环语句有三种,,。
4、表达式”123abc”+123的计算结果是。
5、减号除了可以做减法运算,还能将字符串类型。
6、表达式(Null==undefined)&&(2<3)的值为。
8、数组创建的两种方式是、。
9、若有一个数组名为arr,如何获取它的长度:
。
10、For循环的三个表达式分别代表、、。
11、for(vari=0;i<10;i++){}alert(i);该javascript代码运行的结果是。
12、函数的参数分为、两种。
13、函数用关键字使函数产生一个返回值。
14、程序的三大结构是、、
15、Math对象中对一个数进行向上舍入取整使用方法。
16、生成一个100~200随机整数的表达式是。
17、vart=‘abc’,substr(-1,1)可以获取。
18、字符串里根据指定字符切割字符串的方法是。
19、window对象中定时器有、。
20、获取一个日期对象的毫秒数使用方法。
三、编程实现如下功能(每小题3分,共12分)
1、使用循环结构打印如下图形
123456789
228
337
446
55
646
737
828
123456789
2、把任意一个整数分解成多个质因数之积。
在文本框中任意输入一个整数,单击“分解”按钮,在页面中显示如下等式。
例如:
90=2*3*3*5
80=2*2*2*2*5
150=2*3*5*5
3、使用Dom操作完成增删div结点。
默认显示一个红色div、一个绿色div。
点击增加按钮,则在两个div中间添加一个蓝色div;
点击删除按钮,则删除添加的那个蓝色div。
4、排序算法
随机产生20个150~250之间的整数,使用多种排序算法,完成降序排序。