一、单选题(共30题,每题2分)
得分:2.0分
1.Math.pow(1,2)的结果是
A 1
B 2
C 3
D 0
正确答案: A
解析: 1的2次方,还是1
2.已知字符串\”hello everybody \”通过下面哪个方法可以去掉字符串两端的空白
A trim()
B split()
C reverse()
D join()
正确答案: A
解析: 使用排除法:split分割字符串;reverse反转数组;join将数组转成字符串
trim() 去除字符串两端空格
3.下面哪一个方法可以查找 class 名为 “xm”的元素
A document.getElementsByClassName(“xm”)
B document.getElementsByName(“xm”)
C document.Class(“xm”)
D document.ByName(“xm”)
正确答案: A
解析: document.getElementsByClassName(“xm”);获取class为xm的元素
4.下面的描述中不正确的是
A arguments 中保存了实际传入函数内的所有参数
B return 只能在函数内部使用
C setInterval(fn1,1000) 只会调用一次 fn1
D Date 对象的 getMonth() 获取到的值比实际月份小1
正确答案: C
5.判断下面的代码输出为 var a = 1; var b = a * 0; var a; if (b == b) { console.log(b * 2 + “2”- 0 + 4); } else { console.log(!b * 2 + “2”- 0 + 4); }
A 6
B NaN
C 22
D 26
正确答案: A
解析:
6.对象可以通过哪种方式进行对象属性的遍历
A forEach
B for
C for…in
D for…of
正确答案: C
解析:
C
7.请阅读下面代码 var arr = [1,2,3,4,5]; var arr2 = arr; arr2.push(0); arr2.concat(6); console.log(arr); 上述代码执行的结果是
A [1,2,3,4,5]
B [0,1,2,3,4,5]
C [1,2,3,4,5,0]
D [1,2,3,4,5,0,6]
正确答案: C
解析: concat不修改原数组
8.关于nodeName描述错误的是
A 元素节点的节点名始终是标签名
B 文本节点的节点名始终是#document
C 文本节点的节点名始终是#text
D 属性节点的节点名始终是属性名
正确答案: B
解析: 文本节点名称是#text
9.下列哪个对象不属于bom对象
A document
B location
C history
D offsetWidth
正确答案: D
10.关于JavaScript中的Math对象的说法,正确的是
A Math.ceil(512.51)返回的结果为512
B Math.floor( )方法用于对数字进行下舍入
C Math.round(-512.51)返回的结果为-512
D Math.random( )返回的结果范围为0-1,包括0和1
正确答案: B
11.var arr = [3,6,8,9]; var res = arr.slice(1,3); console.log(res) 结果是
A [6,8,9]
B [6,8]
C [3,6,8]
D [3,6]
正确答案: B
解析:
12.Math.round( 36.78 )的结果是
A 37
B 36
C 36.8
D 36.78
正确答案: A
13.Math.Max(5,6,7,90,0);运行的结果是
A 90
B 5
C 0
D 6
正确答案: A
14.获取0 – 1之间的随机数
A Math.ceil()
B Math.floor()
C Math.random()
D Math.rand()
正确答案: C
15.节点的nodeType值为什么,代表着是元素节点
A 3
B 1
C 9
D 8
正确答案: B
解析:
1为元素节点,2为属性节点,3为文本节点,8为注释节点,9为根元素节点
16.以下关于 Array 数组对象的说法不正确的是
A 对数组里数据的排序可以用 sort 函数,如果排序效果非预期,可以给 sort 函数加一个排序函数的参数
B reverse 用于对数组数据的倒序排列
C 向数组的最后位置加一个新元素,可以用 pop 方法
D shift 方法用于删除数组第一个元素
正确答案: C
17.如何往body当中插入一个div
A var div =document.createDiv(“box”); document.body.appendChild(div)
B var div =document.createElement(“div”); document.body.appendChild(div)
C var div =document.createElement(“div”); document.body.append(div)
D var div =document.create(“div”); document.body.appendChild(div)
正确答案: B
18.两个字符大小比较规则是什么
A 比写法
B 比发音
C 比ASCII码
D 比写法和发音
正确答案: C
19.var arr = [1,2,3,4]; arr.push(1,[1,2,3],2); alert(arr.length)
A 4
B 7
C 3
D 9
正确答案: B
20.下列哪种写法是正确的对象或者数组创建方法?
A [{name=”zhangsan”},{name=”lisi”}]
B {[“name”,”age”],[“lisi”,30]}
C {[“name”:”zhangsan”],[“age”:18]}
D [{name:”zhangsan”},{name :”lisi”}]
正确答案: D
21.下面代码的执行结果是( )
var num = 20;
var num2 = 18;
var math = new Math();
var max = math.max(num,num2);
console.log(max)
A 报错
B 20
C 18
D NaN
正确答案: A
解析:
Math对象不能创建
22.分析下面的代码,输出的结果是
var arr=new Array(5);
arr[1]=1;
arr[5]=2;
console.log(arr.length)
A 2
B 5
C 6
D 报错
正确答案: C
解析:
数组的下标从0开始,arr[5]代表数组的第6项,所有数组的长度为6
23.var n = “miao wei ke tang”.indexOf(“wei”,6);n的值为
A -1
B 5
C 报错
D -10
正确答案: A
24.[1,2,3,4].join(‘0’).split(’’) 的执行结果是
A “1,2,3,4”
B [1,2,3,4]
C [“1”, “0”, “2”, “0”, “3”, “0”, “4”]
D ‘1,0,2,0,3,0,4’
正确答案: C
25.var arr = [1,2,3]; var brr = arr; brr[0]=“lemon” 请问arr、brr的值为
A arr=[1,2,3],brr=[“lemon”,2,3]
B arr=[1,2,3],brr=[“lemon”,1,2,3]
C arr=[“lemon”,2,3],brr=[“lemon”,2,3]
D arr=[“lemon”,2,3],brr=[“lemon”,1,2,3]
正确答案: C
解析:
引用数据类型传递
26.var arr = [100,4,2,3,200]; alert(arr.sort(function(a,b){return b – a;}))
A 2,3,4,100,200
B 200,100,4,3,2
C 100,2,200,3,4
D 4,3,200,2,100
正确答案: B
解析:
sort添加了比较器函数,并且b-a是降序排序
27.请阅读下面代码 var arr = [1,2,3,“hello”]; arr.concat(“world”); console.log(arr.toString()); 上述代码的输出结果是
A “1,2,3,hello”
B “string”
C “1,2,3,hello,world”
D “1 2 3 hello world”
正确答案: A
解析:
concat不修改原数组!
28.var arr = [1,2,3,4]; arr.join(\”&\”); console.log(arr);
A [1,2,3,4]
B 1&2&3&4
C [1&2&3&4]
D 1,2,3,4
正确答案: A
解析:
join 不改变原数组。
29.关于nodeValue描述错误的是
A 属性节点的nodeValue是属性值
B 文本节点的nodeValue是文本本身
C 元素节点的 nodeValue是数字
D 元素节点的 nodeValue是标签名
正确答案: D
解析:
元素节点的 nodeValue是null
30.var arr = [1,2,3,4]; alert(arr)
A [1,2,3,4]
B 1,2,3,4
C [1234]
D 1234
正确答案: B
解析:
转为字符串,默认,分隔
二、多选题(不定项选择)(共20题,每题2分)
1.下面哪些方式可以将div的文字设置为红色
A div.color = “red”
B div.style.color =“red”
C div.style.cssText=“color:red”
D div.cssText=“red”
正确答案: B,C
解析:
对象.style.属性=“属性值”,可以设置字体颜色
对象.style.cssText=“color:red”,可以批量设置css属性
2.数组添加元素的方法有
A push
B pop
C slice
D
unshift
正确答案: A,D
解析:
AD
3.创建对象的方式有
A var obj = {}
B var obj = []
C var obj = new Object()
D 以上都是
正确答案: A,C
解析:
AC
4.下面结果返回值为4的有
A Number(“4”)
B parseInt(“4aa11”)
C Math.floor(3.5)
D Math.round(3.5)
正确答案: A,B,D
解析:
ABD
5.下面关于数组方法描述正确的是
A 可以通过splice()复制数组
B forEach()可以遍历数组,等同于for循环
C every(fn) 返回布尔值,如果该函数每一项都返回 true,才返回true
D some(fn) 返回布尔值,如果该函数每一项都返回 true,才返回true
正确答案: B,C
解析:
BC
6.删除节点的方法
A remove()
B removeChild()
C move()
D moveChild()
正确答案: A,B
解析:
元素.remove()可以删除当前元素,父元素.removeChild(子元素)可以根据父元素删除指定的子元素
7.原生JS中把节点追加到父节点里面的方法有
A appendChild()
B insertBefore()
C prepend()
D appendTo()
正确答案: A,B
解析:
父元素.appendChild(子元素),将子元素插入的到父元素的最后一位,父元素.insertBefore(newNode,oldNode),将子元素插入到父元素内的指定位置
8.清除定时器的方法
A clear()
B celarAll()
C clearTimeout()
D clearInterval()
正确答案: C,D
解析:
定时器分为计时器和延时器,所以两个清除都叫清除定时器
9.下列哪些方式可以遍历数组
A for
B for-in
C for-by
D switch
正确答案: A,B
解析: for为常用循环语句,for-in主要用来遍历非数组对象,但是也可以遍历数组
js中没有for-by, switch是分支结构
10.window对象的子对象有
A document
B location
C href
D history
正确答案: A,B,D
解析: window子对象:document,location,history,navgaitor…唯独href只是HTML属性
11.关于window对象表述正确的有
A DOM的document 也是 window 对象的属性之一
B window.location.reload()方法可以用来刷新当前页面
C window.location.href=“a.html\”的作用是把当前页面替换成a.html页面(类似于跳转到a.html)
D 定义了全局变量g,可以用window.g的方式来存取该变量
正确答案: A,B,C,D
解析:
以上都是正确答案
12.以下选择元素节点的方法书写正确的有
A document.getElementById()
B document.getElementByName()
C document.getElementsByClass()
D document.getElementsByTagName()
正确答案: A,D
解析: AD,注意单词书写正确
13.开启定时器和延时器的方法有
A clearInterval()
B setTimeOut()
C setTimeout()
D setInterval()
正确答案: C,D
解析:
CD
14.var str = “abcdfghi”; 下面哪些方式可以实现截取\”bcd”
A str.substr(1,3)
B str.substring(1,4)
C str.substring(1,3)
D str.substr(1,4)
正确答案: A,B
解析:str.substr(n,m),从第n为截取到第m位,包含m位;
str.substring(n,m),从第n位截取到第m位,不包含m位
15.创建一个数组的方法有哪些
A var arr = [];
B var arr = new Array(3)
C var arr = new Array(3,4)
D var arr = {}
正确答案: A,B,C
解析:
A为字面量方式创建数组,B为构造函数方式创建一个长度为3的空数组,C为构造函数方式创建数组,D为创建对象
16.window对象的内置对象有哪些
A document
B history
C href
D location
正确答案: A,B,D
解析:
document为window的文档对象,history为window的历史记录对象,location为window的url对象
17.下面对字符串的描述正确的是
A 字符串的长度可以通过length属性获取
B 字符串可以通过charAt()获取某个字符对应的索引
C 字符串可以通过indexOf()获取某个字符对应的索引
D 字符串可以通过join()转成数组
正确答案: A,C
解析:
AC
18.下列哪些方法数组和字符串都能用
A concat()
B splice()
C slice()
D sort()
正确答案: A,C
解析:
concat可以连接数组,或连接字符串,slice可以截取数组,或截取字符串;
splice是数组的替换,sort是数组的排序
19.在JavaScript中,下面代码表示获取文本框的值
var usrName = document.getElementById(“txtName”).value
则下列选项中验证文本框为空的条件表达式不正确的是
A usrName ==\”\”
B usrName.length<=0
C usrName=\”\”
D usrName.length<0
正确答案: C,D
解析:
C选项是赋值不是比较
D选项,应为长度不会小于0
20.以下不属于关键字或保留字的有
A class
B let
C style
D script
正确答案: C,D
解析:
关键字指该名字在语法中另有他用,保留字指Javascript 以后打算扩展使用的,都不能用来作为变量名、函数名和标签名;参考下表可知,class和let都是关键保留字,style和script则不是。