一、单选题(共30题,每题2分)
得分:2.0分
1.如下代码,会弹出来是什么 alert(a);var a=12;
A 报错
B a is not define
C undefined
D 12
正确答案: C
解析:变量提升
2.JavaScript的组成不包括
A ECMAScript
B DOM
C BOM
D document
正确答案: D
3.以下代码执行后,分别弹出来的值是: 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为全局变量
4.如下代码,会弹出来是什么 var num1="1" ;var num2=1 alert(num1-num2);
A 0
B 11
C 1+1
D 报错
正确答案: A
解析:
相减,进行隐士转换,全部为数字
5.for(var i=0;i<10;i++){ sum += i; } console.log( i )
A 8
B 9
C 10
D 11
正确答案: C
6.下面不是分支语句使用的关键字为
A case
B if
C else
D for
正确答案: D
解析:
7.分析输出结果是
function sum(a){ a = a + 2; }
var res = sum(2);
console.log(res);
A 2
B 4
C NaN
D undefined
正确答案: D
解析:
undefined
8.结束本次循环,进入下一次循环的关键字是
A continue
B break
C return
D switch
正确答案: A
9.代码的输出结果是
function add(){
var sum = 1 + 2;
console.log( sum );
}
console.log(sum) ;
A 输出两个3
B 输出一个3
C 程序报错
D 输出一个undefined
正确答案: C
解析:
sum是局部变量,全局环境未定义
10.代码的输出结果是
for(var i=1; i<=6; i++) {
if( i % 3 == 0) { continue; }
console.log( i);
}
A 分别输出1、2、4、5
B 分别输出3、6
C 分别输出1、2、3、4、5、6
D 分别输出1、2
正确答案: A
解析:
能被3整除的数不会输出
11.y 的输出结果是
var x=-10,y;
x = 2*x;
y = x+25;
A -15
B 10
C -5
D 5
正确答案: D
解析:
-10*2+25=5
12.代码的输出结果是
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是局部变量
13.typeof null 检测出来的数据类型是
A null
B number
C object
D undefined
正确答案: C
解析:
null是空对象
14.6 > 4 && false 运算的结果是
A true
B undefined
C 报错
D false
正确答案: D
解析:
要保证&&左右两边都为真,&&左边为真,并不意味着整个表达式为真;所以得走&&符右边,由于&&右边是一个数,所以返回这个数
15.函数运行的结果是
function sum(a,b){
var res = a + b;
return true;
return res;
}
var res = sum(1);
alert(res)
A 1
B NaN
C 报错
D true
正确答案: D
解析:
遇到return 终止 函数 并将return后面的结果返回; return下面代码就不会执行;所以是true
16.以下代码的运行结果是 alert(a); a = 10; alert(a)
A undefined 10
B 报错 10
C 报错 打印不出来
D 0 undefined
正确答案: C
解析:
a没用var就直接使用会报错,一旦报错下面代码不执行
17.JavaScript代码必须出现在下面的哪个标签内部才可以被执行?
A body
B head
C div
D script
正确答案: D
解析:
script标签可以出现在页面的标签的任意处
18.JavaScript和Java之间的关系是
A JavaScript是Java的子集
B JavaScript和Java是一回事
C Java是JavaScript的子集
D JavaScript和Java没有包含关系
正确答案: D
解析:
他们之间没有任意关系,js是前端语言,java是后台语言
19.isNaN(123) 的结果是
A true
B false
C null
D 以上都不对
正确答案: B
解析:
isNaN(值);值是一个数,返回false;不是一个数返回true;所以是false
20.下列哪个不是选择结构?
A if
B if...else
C switch
D do...while
正确答案: D
解析:
do...while是循环
21.函数返回值用下面哪个关键字返回?
A return
B break
C continue
D switch
正确答案: A
解析:
var arr = [3]; 创建了一个长度为1的数组,值为3
22.有下述JS代码: var x = 10;
function add( num ){
num++;
console.log( 'num='+num );
}
add(x);
console.log( 'x='+x ); 此段代码执行后的结果是
A num=10 x=10
B num=11 x=10
C num=10 x=11
D num=11 x=11
正确答案: B
解析:
num=11 x=10
23.HTML页面中写JavaScript时,会用到HTML的一个标签,它是
A script
B style
C link
D body
正确答案: A
24.如下代码,会弹出来是什么 var num1="hi" var num2=1 alert(num1-num2);
A hi
B 1
C NaN
D 报错
正确答案: C
解析:
进行Number()隐士转换, 都转换为数字, num1不是数字字符串,会转换为NaN
25.以下哪项不属于javascript的特征
A Javascript是一种脚本语言
B Javascript是事件驱动的
C Javascript代码需要手动编译以后才能执行
D Javascript是独立于平台的
正确答案: C
解析:
JavaScript是基于事件驱动并独立于平台的脚本语言
26.ES3的标准中,Javascript语言中定义变量的关键字是var,有时候不写,也没有错,此时,这个变量是
A 局部变量
B 全局变量
C 有可能是全局也有可能是局部
D 报错
正确答案: B
解析: 默认前面添加了一个window, 为全局变量
27.console.log(typeof typeof 123456),在控制台中打印什么内容
A 123456
B number
C string
D object
正确答案: C
解析:
第一个 typeof 123456 返回 "number"
然后typeof "number" 返回"string"
28.
var num = 123.456789;
哪种方法可以保留3位小数
A num.toString(3)
B num.toFixed(3)
C parseFloat(num,3)
D Number(num,3)
正确答案: B
解析:
注意,只有数值类型的变量,才有toFixed方法
29.var num = 123.456789;
哪种方法可以保留3位小数
A num.toString(3)
B num.toFixed(3)
C parseFloat(num,3)
D Number(num,3)
正确答案: B
解析:
注意,只有数值类型的变量,才有toFixed方法
30.代码的输出结果是
var a =5,b=8;
var t =a; a =b; b=t;
console.log(a,b)
A 5 8
B 8 5
C 3
D 13
正确答案: B
解析:
a和b互相交换
二、多选题(不定项选择)(共20题,每题2分)
1.下面哪些是循环语句
A while
B do...while
C for
D switch
正确答案: A,B,C
解析:
while、do...while、for
2.下面哪些属于选择结构控制语句:
A if
B for
C switch
D while
正确答案: A,C
解析:
固定关键字
3.下面选项中数据类型为数字类型的有
A "1"
B 1
C true
D NaN
正确答案: B,D
解析: 1、NaN
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选项错误
5.下面语句得到值为数字2的有
A 1 + '1'
B 8 % '3'
C '1' + '1'
D '4' - 2
正确答案: B,D
解析:
A是字符串拼接,结果为:“11”; B“3”会隐式转换位3,结果为8%3=2;C为字符串拼接,结果为 “11”; D“4”会隐式转换为4,结果为4-2=2
故,答案为BD
6.下面哪些是关键字
A var
B function
C case
D 以上都是关键字
正确答案: A,B,C,D
解析:
var申明变量的关键字;function申明函数的关键字;case选择分支的关键字
故答案为ABCD
7.JavaScript运算符都有哪些
A 赋值运算符
B 算术运算符
C 关系运算符
D 逻辑运算符
正确答案: A,B,C,D
解析:
赋值运算符=、数学运算符+ - * / %、一元运算符++ --、逻辑运算符&& || !
8.程序都有哪些结构
A 顺序结构
B 选择结构
C 循环结构
D 以上都不正确
正确答案: A,B,C
解析:
程序结构有顺序结构、选择结构和循环结构
9.JavaScript的基本组成包括
A DOM
B BOM
C jQuery
D ECMAScript
正确答案: A,B,D
解析:
JavaScript的基本组成包括DOM、BOM和ECMAScript
10.switch语句中的关键字可以包含下面哪些?
A case
B else
C break
D default
正确答案: A,C,D
解析:
else是if判断的关键字
11.以下哪些属于循环语句
A switch
B for
C while
D do...while
正确答案: B,C,D
解析:
循环语句 有三个 for while do...while; switch是选择结构
12.以下变量命名规范正确的是
A $num
B 1num
C num
D num1
正确答案: A,C,D
解析:
变量名 不能以数字开头
13.以下哪些属于基本数据类型
A object
B boolean
C string
D number
正确答案: B,C,D
解析:
null 和 undefined是特殊数据类型;
14.下列哪些是布尔值
A 0
B 1
C false
D true
正确答案: C,D
解析:
布尔只有两个值 true和false
15.函数中实参可以是
A 常量
B 变量
C 只能是变量
D 只能是常量
正确答案: A,B
解析:
实参可以是变量 常量 ,形参只能是变量
16.javascript由哪几部分组成
A js
B ECMAScript
C DOM
D BOM
正确答案: B,C,D
解析:
BCD
17.下面声明变量及赋值的写法正确的有
A var _myName = 12a
B var _myName = "12a"
C var myName = 12
D var $myName = true
正确答案: B,C,D
解析: A选项 12a是字符串,不是纯数字,字符串要用引号
18.下面哪些方法可以实现将字符串"123",变成数值型
A Number()
B parseInt()
C parseFloat()
D Boolean()
正确答案: A,B,C
解析:
Boolean()转成布尔值
19.递归函数的含义
A 一个函数通过名字调用自身情况下构成的
B 就函数内部调用函数本身
C 使用的一种流程控制语句
D 就是选择结构
正确答案: A,B
解析:
递归是自己调用自己,但不是流程控制语句,也无法控制可见性,AB正确,CD错误
20.下面哪些属于逻辑运算符?
A &&
B ||
C !
D 以上都不正确
正确答案: A,B,C
解析:逻辑运算符