分享几个之前做题的错题点,发现自己的理论知识还是有点差,以后会不定期分享错题
原生js笔试题错题点
- 下列哪些是属于DOM操作正确方法
- A:removeChildren
- B:appendCdhild
- C:children
- D:removeChildren
正确答案BD
解析:原生js中没有removeChildren方法,children属于选择器而并非方法,children属于一个原生js node节点的属性
- 以下选项能够正确的随机获取数组中的元素var arr=[“张三”,“李四”,“王五”,“二哈”]
- A:Math.round(Math.random()*(arr.length-1))
- B: parseInt(Math.random()*arr.length)
- C: Math.round(Math.random()*(arr.length))
- D: parseInt(Math.random()*(arr.length-1))
正确答案AB
解析:要随机获取数组的内容,只要随机生成随机数组下标的索引arr的下标为0到arr.length-1 所以只需要随机生成0-3的随机整数即可
- A:选项生成0-3的随机数然后四舍五入即可得到0-3之间的随机数
- B:Math.random()*arr.length生成0-4之间的随机数但是不会生成4 并强制转化为整数
- C: Math.random()*arr.length生成0-4之间的随机数,但是如果利用Math.round 可能会生成4所以不行
- D: Math.random()*arr.length-1随机生成一个0-3之间的随机数,利用parseInt取整所以是不会包括3的所以不行
3.以下方法中属于字符串方法的是
- A: index0f()
- B: split()
- C: replace()
- D: charAt
正确答案ABCD
解析
- A: indexOf为检索字符串,并返回符合要求的索引值
- B: split切割字符串,以任意字符或者标识符切割字符串 返回数组
- C:replace查找符合第一个参数的字符替换成第二个字符
- D:charAt 查找字符串并返回索引
- 以下哪个操作可以刷新浏览器
- A:window.history.go(0);
- B:window.location.reload()
- C:window.open()
- D:window.history.back(0);
正确答案A,B
解析
- A:window.history.go(0)go方法指的是去往上一层或者下一层,参数值为0时可以刷新页面
- B:window.location.reload()方法指的是重新加载页面
- C: window.open() 指的是在一个新的页面加载指定的资源或图片
- D:window.history.back()方法会在会话历史记录中向后移动一页。如果没有上一页,则此方法调用不执行任何操作。
5.下面那些方法可以遍历数组
- A:for
- B:for-in
- C:do-while
- D:for-by
正确答案
解析
- A:常规for循环
- B:for in 可以
- C:相当于 for循环
- D:没有这种语法
6.var now = new Date()设置三天后的时间正确写法
- A:now.setDate(now.getDate()+3);
- B:now.setTime(now.getTime()+3);
- C:now.setTime(now.getTime()+310003600*24)
- D:now.setDate(now.getDate()+31003600*24)
正确答案:AC
解析
- A:获取今天的日期加上3设置给now
- B:获取此时距离1970年1月1日00:00:00时间戳+3,返回的是此时时间加上3毫秒以后的时间
- C:获取此时距离1970年1月1日00:00:00时间戳+3100024 *3600返回的是三天后的此时的时间戳
- D 获取今天的日期加上此时距离明天的毫秒数返回的是一个时间戳加一个今天的日期
7.以下为window的子对象的是
- A:history
- B:location
- C:navigator
- D:document
正确答案ABCD
解析
- A:history描述浏览历史
- B:location描述浏览器地址
- C:navigator浏览器本身信息
- D:document属于window内置对象,其中还包括screen屏幕尺寸对象,frames返回当前浏览器的所有frame框架
8.var arr = [3,4,5];var res = arr.unshift(1,2);console.log(res);输出的结果是
- A:[1,2];
- B:[3,4,5]
- C:5
- D:1,2,3,4,5
正确答案:c
解析:unshift的返回值为数组的长度
9.以下代码执行后,哪个结果是正确的var str=“hello world”;console.log(str.substring(2,7))
- A:llo wor
- B:llo wo
- C:llo w
- D:ello wo
正确答案:C
解析substring用于提取字符串中介于两个指定下标之间的字符。
10.var arr = [1,2,3,4]; alert(arr.concat(1,2,3,[1,2,3],5).length);
- A:4
- B:9
- C:11
- D:5
正确答案:C
解析:concat拼接数组,返回的数组应该为[1,2,3,4,1,2,3,1,2,3,5] ,因此返回的数组长度为11
11.判断下面的代码输出为var a=1;var b = a0;var a;if(b==b){console.log(b2+“2”-0+4);}else{console.log(!b*2+“2”-0+4);}
- A 6
- B NaN
- C 22
- D 26