一、选择题
1. 下列js可以让一个input的背景颜色变成红色的是?
A. inputElement.style.backgroundColor = 'red';
B. inputElement.backgroundColor = 'red';
C. inputElement.style.backgroundColor = '#000000';
D. inputElement.backgroundColor = '#000';
2.以下不是js变量命名规范的是:
A、不能含有空格 B、不区分大小写 C、不能以关键字或保留字命名
D、第一个字符必须是一个字母、下划线(_)或一个美元符号($)
3.以下不是关键字或保留字的是:
A、var B、new C、bool D、boolean
4.不属于js的基础数据类型是
A、null B、float C、string D、number
5.以下哪个值放在if中被隐式类型转换后不会变为false
A、数字-1 B、数字0 C、null D、空字符串
6. 下面这个JS程序的输出是什么:
function Foo() {
var i = 0;
return function() {
console.log(i++);
}
}
var f1 = Foo(),
f2 = Foo();
f1();
f1();
f2();
A. 0 1 0 B. 0 1 2 C. 0 0 0 D. 0 0 2
7. 请给出这段代码的运行结果( )
var bb = 1;
function aa(bb) {
bb = 2;
alert(bb);
};
aa(bb);
alert(bb);
A. 1 1
B. 1 2
C. 2 1
D. 2 2
8、下面符合一个有效的javascript变量定义规则的是?
A. _$te$t2
B. with
C. a bc
D. 2a
9. 下面有关javascript常见事件的触发情况,描述错误的是?
A. onmousedown:某个鼠标按键被按下
B. onkeypress:某个键盘的字符键被按下或按住
C. onblur:元素获得焦点
D. onchange:用户改变域的内容
10. 下面有关JavaScript中事件冒泡和事件捕获的描述,错误的是?
A. DOM2级事件处理程序可以添加到事件冒泡也可以添加到事件捕获
B. 事件冒泡是由最具体元素逐级向最不具体元素传播
C. 事件捕获是由最不具体元素逐级向最具体元素传播
D. DOM0级事件处理程序可以添加到事件冒泡也可以添加到事件捕获
11.以下程序运行结束正确的是:
var i = 10;
i++;
console.log(i);
var y = i++;
console.log(y);
y = ++i;
console.log(y);
y += 10;
console.log(y);
A.10 11 13 23 B. 11 11 13 23 C.10 12 13 23 D.11 12 13 23
12. 以下程序运行结束正确的是:
var a = 3;
var b = 4;
var c = 5;
console.log(a>b&&c>b||a<c);
A.1 B.true C.false D.报错
13. 以下程序运行结束正确的是:
var a = 3;
var b = 4;
var c = 5;
console.log(a>b?a:c);
A.3 B.4 C.5 D.报错
14. 以下程序运行结束正确的是:
var str1 = null;
var str2 = false;
console.log(str1 === str2?"相等":"不相等");
A.相等 B.不相等 C.true D.false
15.如何获取变量名叫str字符串的长度
A.count(str) B.str.length C.strlen(str) D.前面的都不对
16.下列哪种方式不能获取非行间样式的宽度:
A.element.style.width
B.getComputedStyle(element, null).width
C.offsetWidth
D.clientWidth
17.event.clientX获取的鼠标位置是相对于谁获取的
A.屏幕 B.整个文档 C.浏览器窗口 D.父级元素
18.Tween.js中的4个参数的含义以下正确的是:
A.开始位置 终点位置 当前步数 总步数
B.开始位置 终点位置 变化量 总步数
C.开始位置 当前步数 变化量 总步数
D.当前步数 开始位置 变化量 总步数
19.在有结构父级也有定位父级元素的情况下offsetLeft获取的相对谁的距离
A.定位父级 B.根节点body C.结构父级 D. 浏览器窗口
20.js原生中不属于dom方法的是:
A.parentNode B.children C.clientX D.firstChild
21. 请问以下函数里的this指向是谁
var obj={};
obj.test1=function (){
alert(this);
}
var test2=obj.test1;全局函数和全局变量都是window的对象
var x = test2();
A.window B.docment C.body D.obj
22. addEventListener的第三个参数为false是什么意思
- 阻止默认事件 B. 冒泡 C. 捕获 D. 以上都不对
23.下面哪个不能匹配到这个字符串‘18600805498’:
A. /^1[34578]\d{9}$/ B. /^\d{11}$/ C. /[1-9]{11}/ D. /\d{11}/
24.下面哪个方法是正则对象的方法:
A.match B.test C.replace D.search
25.下面哪个正则表达式可以删除首位和末尾连续的空格:
A./^\s|\s$/g B./^\s+|\s+$/g C./^\s+$/g D./\s+/g
26. 下面哪种写法可以匹配任意汉字的变量:
A.new RegExp(“[\u4e00-\u9fa5]”) B.new RegExp(“\u4e00-\u9fa5+”);
C./\u4e90-\u8fa5/ D./\u4e00-\u9fa5+/
27.以下对事件委托描述错误的是
A.把事件加到父级上,触发执行效果
B.可以通过事件对象的target属性来获取真正触发事件的对象
C.会降低性能
D.是利用冒泡的原理
28.以下对方法的解释错误的是
A.pop:数组尾部删除
B.unshift:数组头部删除
C.split:将字符串切割成数组
D.join:将数组转换成字符串
29.事件绑定(addEventListener)和普通绑定(on….)的区别以下说法错误的是:
A.给一个对象多次普通绑定后面的会覆盖前面绑定的
B. 给一个对象多次事件绑定后面的不会覆盖前面绑定的
C.事件绑定不兼容ie8及以下浏览器
D.普通绑定和事件绑定默认的事件流都是事件冒泡
30.以下哪个方法可以阻止默认事件:
A.cancelBubble .B.preventDefault C.stopPropagation D.以上的都不对
31.下面对于dom方法描述错误的是:
A.appendChild:添加一个子节点到元素的末尾
B.insertBefore:添加一个子节点到元素的第一位
C.replaceChild:替换节点
D.removChild:删除节点
32.以下代码alert的值分别是?
var a = 100;
function test(){
alert(a);
var a = 10;
alert(a);
}
test();
A、100 ,10 B、undefined,10 C、10,10 D、报错
33,下面哪个事件不属于移动设备上的原生触摸事件:
A,touchstart B,touchmove
C,tap D,touchend
34.下面那个不是js的消息提醒命令:
A.alert B.popup C.confirm D.prompt
35.下面代码运行结果:
var str="123abc";
alert(typeof (str++)) ;++与字符串运算,会将字符串转换为Number
A.124 B.string C.undefined D.number
36. 以下哪个在JAVASCRIPT中会报错
A.var a = (); B.var a = []; C.var a = {}; D.var a = “”;
37. 在Javascript中,可以使用Date对象的()方法返回一个月中的每一天
A.getDate B.getYear C.getMonth D.getTime
38,当浏览器窗口发生尺寸变化时,会触发下面哪个事件:
A,onscroll B,onresize C,onload D,onerror
39,通过下面哪一个BOM对象可以获取浏览器地址栏相关信息:
A,location B,history C,window D,navigator
40,下面哪个DOM方法可以用来创建一个新的DOM元素:
A,appendChild() B,insertBefore()
C,createElement() D,createTextNode()
二、判断题 (每题2分,共20分)
1. localstorage 中的数据只要用户不主动清除,将会一直保存在本地。T
2,表单的change事件在表单的value属性值发生变化时就会触发。F
3,定时器在执行过程中,会阻塞下面代码的执行。F
4,cookie当浏览器关闭的时候失效。F
5,alert( "12" >= "9" ) 的运行的结果是false。T
字符串比较:是按位对每个字符串进行比较,如果字符串相同,那么比较下一位,直到遇到不同的字符串,立即按照ASCII 码进行比较,返回结果,后面不在进行比较
6,FireFox浏览器通过 mousewheel 来表示鼠标滚轮事件。F
7,通过Math.random() 方法可以获得一个0~1的随机数字。T
8,正则+ 表示匹配0到多个值。 F
9,keypress 事件在按下任意键盘按键都会触发。F
10,调用 indexOf() 方法会返回指定子字符串在字符串中出现的所有位置。 F