2024年6月12日发(作者:)

1. 以下关于JavaScript的说法,哪一个是正确的:

(A) JavaScript语言是基于Java语言的一种实现

(B) JavaScript是一种解释性语言,不用编译就可以运行

(C) 在JavaScript中声明变量时必须明确声明变量的数据类型

(D) JavaScript脚本只能在浏览器中运行

2. 在以下代码段中,哪些变量是全局变量?

(A) 只有a

(B) a和c

(C) b和c

(D) a、b、c都是

3. 以下关于事件属性的说法,错误的是:

(A) onmouseup事件属性表示当鼠标按键被松开时执行脚本

(B) onabort是img元素的事件属性,表示当图像加载中断时执行脚本

(C) onload事件仅在body和frameset元素中有效

(D) 任何元素都有onclick事件属性

4. 以下创建函数的代码,错误的是:

(A) function foo() { alert("hi"); }

(B) var foo = function() { alert("hi"); }

(C) var foo = new Function("", "alert('hi');" );

(D) var foo() { alert("hi"); }

5. 以下描述中错误的一个是:

(A) 执行语句var a; alert(a),打印的内容为undefined

(B) 执行语句var a = ; alert(a),打印的内容为undefined

(C) 执行语句var a,b; a = typeof(b); alert(a),打印的内容为undefined

(D) 执行语句var a,b=null; a = typeof(b); alert(a),打印的内容为undefined

6. 执行下面的代码打印出来的结果,正确的是:

(A) 4

(B) 5

(C) 6

(D) 7

7. 以下创建自定义对象的写法,错误的是:

(A)

(B)

(C)

(D)

8. 执行下面的代码打印出的结果,正确的是:

(A) 2,30,512,NaN

(B) NaN,30,17,undefined

(C) 1,3,17,NaN

(D) NaN,30,512,11

9. 以下描述中错误的一个是:

(A) 如果想在浏览器的“地址”栏中执行 JavaScript 语句,应使用如下格式:

javascript:

(B) JavaScript中单行注释使用 //,而多行注释以"/*"开始,以"*/"结束

(C) NaN的作用是用来表示一个值不是数字,例如parseInt("a")返回的就是NaN

(D) JavaScript中变量名是大小写敏感的,变量名中可以包含字符、数字、_、*、$,并且必

须以字母

开头

10. 以下哪个语句打印出来的结果是true:

(A) alert("12" === 12);

(B) alert(NaN === NaN);

(C) alert(typeof(null) === typeof(window));

(D) alert([1,2,3] === [1,2,3]);

11. 执行下面的代码打印出的结果,正确的是:

(A) object 和 hello

(B) 和

(C)

(D) function 和 hello

和 hello

12. 执行下面的代码打印出的结果,正确的是:

(A) hello 和 出错

(B) function 和 hello

(C)

(D) object 和 hello

13. 以下描述中错误的是:

和 hello

(A) alert(typeof(99)) 显示的内容为:number

(B) alert(typeof(null)) 显示的内容为:object

(C) alert(typeof(undefined)) 显示的内容为:undefined

(D) alert(typeof(function() {})) 显示的内容为:Function

14. 以下哪个语句打印出来的结果是false?

(A) alert(1 == true);

(B) alert(isNaN(true));

(C) alert(5 == "5");

(D) alert(null == undefined);

15. 有一个HTML页面,其源码中有如下内容

以下获取form中id为name的输入框的值的JavaScript代码,其中错误的是:

(A) mentsByTagName('input')[0].value

(B) mentById('name').value

(C) mentById('myform').childNodes[1].value

(D) [0].childNodes[0].value

16. 有一个HTML页面,其源码如下,在FireFox点击“提交”按钮,依次打印的内容,正确的是:

(A) body,div,form,button,form,div,body

(B) div,form,button,form,div

(C) button,form,div,body

(D) button,form,div

17. 执行下面的代码打印出的结果,正确的是:

(A) 135

(B) 246

(C) 136

(D) 145

18. 以下描述中错误的一个是:

(A) JavaScript能够支持面向对象编程,是一种基于对象和事件驱动的编程语言

(B) 使用标记,可以在 HTML 文档的任意地方插入JavaScript代码

(C) 在JavaScript中分号代表语句的结束符,类似于var x=5; 这样的语句中的分号是不可

以省略的

(D) JavaScript在不同的浏览器中存在兼容性问题,其中一部分兼容性问题并不是源自

JavaScript

语言本身,而是源自浏览器对DOM规范的支持不一致

【javascript的分号代表语句的结束符,但由于javascript具有分号自动插入规则,所以它是一个十分

容易让人模糊的东西,在一般情况下,一个换行就会产生一个分号,但实际情况却不然,也就是说在

javascript中换行可能产生分号,也可能不产生,是否自动插入分号,主要看上下行。所以即使是经验

丰富的程序员,有时候也会头大。 在 ECMAScript 中对分号自动插入规则也有相应的解释:空语句,

变量语句,表达式语句,do-while 语句,continue 语句,break 语句,return 语句,以及 throw 语句,

这些确定的ECMAScript语句必须以分号结束。这些分号可以总是明确地出现在源代码文本中。为方

便起见,在特定的情况下,源代码文本中的这些分号可以被省略。也就是说这些语句的结尾是不需要

硬性的输入分号结尾,javascript会自动插入语句结束处。】

19. 有一个HTML页面,其源码如下,在FireFox点击“提交”按钮,依次打印的内容,正确的是:

(A) body,button,form,div

(B) body,div,form,button

(C) button,form,div,body

(D) div,button,form,body

20. 执行下面的代码打印出的结果,正确的是:

(A) 2,3,4

(B) 1,3,出错

(C) 1,3,4

(D) 2,3,出错

21. 以下关于事件的描述,错误的是:

(A) IE浏览器不支持在捕获阶段响应事件

(B) FireFox浏览器既支持在捕获阶段响应事件,又支持在冒泡阶段响应事件

(C) 使用元素的事件属性注册的事件,只能在冒泡阶段被响应

(D) 使用元素的事件属性注册的事件是无法被移除的

22. 有一个HTML页面,源码如下,针对于该页面,请选出在IE浏览器环境下不能打印出“QQ 空

间”的JavaScript语句:

(A) alert(mentById("qzone").innerHTML);