一、单选题(共30题,每题2分)
得分:0.0分
1.
以下代码执行后,两次弹窗分别弹出来的值是:
var num1=1;
function testf1(){
num1=2;
alert(num1);
}
function testf2(){
alert(num1);
}
testf1();
testf2();
A
2,1
B
2,2
C
2,undefined
D
1,1
正确答案: B
解析:
1
得分:2.0分
2.
parseInt("20.2aa") 返回值为
A
20
B
20.2
C
20.2aa
D
NaN
正确答案: A
解析:
20
得分:0.0分
3.
代码的输出结果是
var num = 2;
switch(num) {
case 1: console.log("1");
case 2: console.log("2");
default: console.log("default");
}
A
先输出2,再输出default
B
输出2
C
程序错误
D
先输出1,再输出2,再输出default
正确答案: A
解析:
没有写break,case会穿透
得分:2.0分
4.
代码的输出结果是
var a = 3;
function fn(){
var b = 4;
alert(a);
alert(b);
function me(){
alert(b);
}
me();
}
fn();
alert(a);
A
3 4 4 3
B
3 4 3
C
3 4 4
D
3 4 3 4
正确答案: A
解析:
a是全局变量,b是局部变量
得分:2.0分
5.
代码的输出结果是
var str = '';
for(var b = 1;b < 11;b ++){
str += 'helloworld<br>';
}
document.write(str);
A
helloworld
B
helloworld<br>
C
输出10个helloworld
D
输出10个helloworld<br>
正确答案: C
解析:
循环10次,拼接字符串再一次性输出
得分:2.0分
6.
typeof null 检测出来的数据类型是
A
null
B
number
C
object
D
undefined
正确答案: C
解析:
null是空对象
得分:2.0分
7.
当一个函数的结果还有其它用处时,可以将这个结果返回。用哪个关键字
A
break
B
continue
C
return
D
function
正确答案: C
解析:
将函数中结果要返回,就return
得分:2.0分
8.
以下代码运行的结果是
for(var i = 1; i <= 5; i++){
if(i % 3 == 0){ continue }
}
console.log(i)
A
5
B
3
C
0
D
6
正确答案: D
解析:
for循环 i最终是6 不满足for的条件,结束for循环;此时i = 6
得分:2.0分
9.
以下代码的运行结果是 alert(a); a = 10; alert(a)
A
undefined 10
B
报错 10
C
报错 打印不出来
D
0 undefined
正确答案: C
解析:
a没用var就直接使用会报错,一旦报错下面代码不执行
得分:2.0分
10.
下面哪一个字符串变量定义语句是不正确的
A
var mytext="Here is some text!"
B
var mytext='Here is some text!'
C
var mytext='Here is some text!"
D
var mytext="Here is\ some text!"
正确答案: C
解析:
定义字符串 用“”或者 '' ,没有一边是单引,一边是双引
得分:2.0分
11.
有下列代码:
var x = 10;
function f1( num ){
++ num;
}
var y = f1( x );
console.log( 'x=' + x + '; y=' + y );
执行后的结果是
A
x=10; y=undefined
B
x=10; y=11
C
x=11; y=11
D
x=11; y=undefined
正确答案: A
解析:
x=10; y=undefined
得分:2.0分
12.
查看如下代码:
var score = 75;
var result=score>= 90?"aa":(score>=80?"bb":(score < 60 ? "cc" : "dd"));
console.log(result);
上述代码的输出结果是
A
aa
B
bb
C
cc
D
dd
正确答案: D
解析:
dd
得分:2.0分
13.
有下述JS代码:
var i = 0;
var sum = 0;
do{
i++;
if( i%2 === 0){ continue; }
if( i%5=== 0){ break; }
sum += i;
}while( i<10 );
console.log( 'sum=' + sum );
其运行结果应该是下列哪项
A
sum=0
B
sum=4
C
sum=Infinity
D
死循环
正确答案: B
解析:
sum=4
得分:2.0分
14.
有下述JS代码:
var x = 10; var y = 20;
var z = x<y ? x++ : ++y ;
console.log( 'x=' + x + '; y=' + y + '; z=' + z);
其运行结果是
A
x=11; y=21; z=11
B
x=11; y=20; z=10
C
x=11; y=21; z=10
D
x=11; y=20; z=11
正确答案: B
解析:
x=11; y=20; z=10
得分:2.0分
15.
HTML页面中写JavaScript时,会用到HTML的一个标签,它是
A
script
B
style
C
link
D
body
正确答案: A
解析:
无
得分:2.0分
16.
如下代码,会弹出来是什么 var a; alert(a);
A
报错
B
a is not define
C
undefined
D
0
正确答案: C
解析:
变量提升
得分:2.0分
17.
如下代码,会弹出来是什么 alert(a);var a=12;
A
报错
B
a is not define
C
undefined
D
12
正确答案: C
解析:
变量提升
得分:0.0分
18.
console.log( typeof 123 === “number”)
A
报错
B
true
C
false
D
123
正确答案: B
解析:
得到字符串的"number", 所以类型和值都相等为全等
得分:2.0分
19.
如下代码,会弹出来是什么 var a; alert(a);
A
报错
B
a is not define
C
undefined
D
0
正确答案: C
解析:
变量提升
得分:2.0分
20.
如下代码,会弹出来是什么 alert(a);var a=12;
A
报错
B
a is not define
C
undefined
D
12
正确答案: C
解析:
变量提升
得分:0.0分
21.
如下代码,会弹出来是什么 var num1="hi" var num2=1 alert(num1-num2);
A
hi
B
1
C
NaN
D
报错
正确答案: C
解析:
进行Number()隐士转换, 都转换为数字, num1不是数字字符串,会转换为NaN
得分:2.0分
22.
JavaScript的组成不包括
A
ECMAScript
B
DOM
C
BOM
D
document
正确答案: D
解析:
得分:2.0分
23.
代码的输出结果是
function fnMax(a,b,c){
var a,b,c;
var max = a > b ? a : b;
if(c > max){ max = c; }
alert(max);
}
fnMax(8,2,5);
A
5
B
2
C
8
D
10
正确答案: C
解析:
8,2,5中的最大值为8
得分:2.0分
24.
var k = 1; console.log( k++ + k + ++k + k); 结果是
A
10
B
8
C
9
D
11
正确答案: C
解析:
1+2+3+3=9
得分:0.0分
25.
document.write(num+“”); var num = 123; document.write(num);
A
报错
B
123123
C
undefinedundefined
D
undefined123
正确答案: D
解析:
预解析, 第一个声明变量没有赋值,所以是undefined, 第二个赋值成功, 打印123
得分:2.0分
26.
ES3的标准中,Javascript语言中定义变量的关键字是var,有时候不写,也没有错,此时,这个变量是
A
局部变量
B
全局变量
C
有可能是全局也有可能是局部
D
报错
正确答案: B
解析:
默认前面添加了一个window, 为全局变量
得分:2.0分
27.
以下代码执行后,分别弹出来的值是: var num1=1; function testf1(){ num1=2; var num1; alert(num1); } function testf2(){ alert(num1); } testf1(); testf2();
A
2,1
B
2,2
C
undefined,undefined
D
2,undefined
正确答案: A
解析:
testf1函数先执行, 先进行变量提升, 且里面的num1为私有变量,不会更改全局变量
testf2 里面的num1为全局变量
得分:2.0分
28.
如下代码,会弹出来是什么 var num1="1" ;var num2=1 alert(num1-num2);
A
0
B
11
C
1+1
D
报错
正确答案: A
解析:
相减,进行隐士转换,全部为数字
得分:2.0分
29.
console.log(typeof typeof 123456),在控制台中打印什么内容
A
123456
B
number
C
string
D
object
正确答案: C
解析:
第一个 typeof 123456 返回 "number"
然后typeof "number" 返回"string"
得分:2.0分
30.
代码的输出结果是
var sum = 10;
for(var i = 2;i < 10;i ++){
sum = sum * 0.05 + sum;
}
alert(parseInt(sum));
A
11
B
12
C
13
D
14
正确答案: D
解析:
10 * Math.pow(1.05,8) = 14.7745... 取整为14
二、多选题(不定项选择)(共20题,每题2分)
得分:2.0分
1.
下面哪些是循环语句
A
while
B
do...while
C
for
D
switch
正确答案: A,B,C
解析:
while、do...while、for
得分:0.0分
2.
下面哪些属于选择结构控制语句:
A
if
B
for
C
switch
D
while
正确答案: A,C
解析:
固定关键字
得分:2.0分
3.
下面选项中数据类型为数字类型的有
A
"1"
B
1
C
true
D
NaN
正确答案: B,D
解析:
1、NaN
得分:2.0分
4.
下面语句得到值为true的有
A
"1" == 1
B
1==="1"
C
"2" > "19"
D
"2"==19
正确答案: A,C
解析:
比较相等两个等号会有隐式类型转换,只需值相等即可,三个等号必须类型和值同时相等结果才为true,故A对B错
字符串之间的大小比较是按照ACSII编码大小,“2”的ASCII码比“1”的ASCII大,所以C正确
数字跟字符串比较大小会将字符串隐式转换为数字,即 2>19,D选项错误
得分:2.0分
5.
下面哪些是关键字
A
var
B
function
C
case
D
以上都是关键字
正确答案: A,B,C,D
解析:
var申明变量的关键字;function申明函数的关键字;case选择分支的关键字
故答案为ABCD
得分:2.0分
6.
以下运算符正确的是
A
++
B
--
C
&&
D
>=
正确答案: A,B,C,D
解析:
自增、自减、逻辑与、大于或等于
得分:2.0分
7.
JavaScript运算符都有哪些
A
赋值运算符
B
算术运算符
C
关系运算符
D
逻辑运算符
正确答案: A,B,C,D
解析:
赋值运算符=、数学运算符+ - * / %、一元运算符++ --、逻辑运算符&& || !
得分:2.0分
8.
JavaScript的基本组成包括
A
DOM
B
BOM
C
jQuery
D
ECMAScript
正确答案: A,B,D
解析:
JavaScript的基本组成包括DOM、BOM和ECMAScript
得分:2.0分
9.
switch语句中的关键字可以包含下面哪些?
A
case
B
else
C
break
D
default
正确答案: A,C,D
解析:
else是if判断的关键字
得分:2.0分
10.
以下哪些属于循环语句
A
switch
B
for
C
while
D
do...while
正确答案: B,C,D
解析:
循环语句 有三个 for while do...while; switch是选择结构
得分:0.0分
11.
以下变量命名规范正确的是
A
$num
B
1num
C
num
D
num1
正确答案: A,C,D
解析:
变量名 不能以数字开头
得分:2.0分
12.
下面哪些方法可以实现将字符串“123”变成数值型
A
Number()
B
parseInt()
C
parseFloat()
D
Boolean()
正确答案: A,B,C
解析:
Boolean()是将某个数据类型转为布尔型;
得分:2.0分
13.
函数的参数分为
A
形参
B
实参
C
有参
D
无参
正确答案: A,B
解析:
参数 分为实参和形参
得分:0.0分
14.
以下哪些属于基本数据类型
A
object
B
boolean
C
string
D
number
正确答案: B,C,D
解析:
null 和 undefined是特殊数据类型;
得分:2.0分
15.
下列哪些是布尔值
A
0
B
1
C
false
D
true
正确答案: C,D
解析:
布尔只有两个值 true和false
得分:2.0分
16.
函数中实参可以是
A
常量
B
变量
C
只能是变量
D
只能是常量
正确答案: A,B
解析:
实参可以是变量 常量 ,形参只能是变量
得分:2.0分
17.
逻辑运算符有
A
>
B
<
C
||
D
&&
正确答案: C,D
解析:
逻辑运算符有三个 && || !;AB选项是比较
得分:2.0分
18.
下面声明变量及赋值的写法正确的有
A
var _myName = 12a
B
var _myName = "12a"
C
var myName = 12
D
var $myName = true
正确答案: B,C,D
解析:
A选项 12a是字符串,不是纯数字,字符串要用引号
得分:2.0分
19.
递归函数的含义
A
一个函数通过名字调用自身情况下构成的
B
就函数内部调用函数本身
C
使用的一种流程控制语句
D
就是选择结构
正确答案: A,B
解析:
递归是自己调用自己,但不是流程控制语句,也无法控制可见性,AB正确,CD错误
得分:2.0分
20.
下面哪些属于逻辑运算符?
A
&&
B
||
C
!
D
以上都不正确
正确答案: A,B,C
解析:
逻辑运算符