一、
单选题
1
、以下哪条语句会产生运行错误:(
a
)
A.var obj = ();//
语法错误
B.var obj = [];//
创建数组
C.var obj = {};//
创建对象
D.var obj = //;
原因:var obj = new Array ();是对的;JavaScript 中大括号表示创建对象。var obj = { id:1, name:"jacky" };alert(obj.name);上例表示创建一个具有属性 id (值为 1)、属性 name(值为 jacky)的对象。属性名称可以用引号引起来成 "id"、"name",也可以不引。
当然除了属性,也可以创建方法。
window.onload=function()
{
// var obj = ();
var obj1 = [];//object
var obj2 = {};//object
var obj3 = //;//undefine
alert(typeof(obj1));
alert(typeof(obj2));
alert(typeof(obj3));
}
function
showName()
{
alert(
this
.name);
}
var
obj
=
{ id:
1
, name:
"
jacky
"
, showName:showName }
;
obj.showName();
2
、以下哪个单词不属于
javascript
保留字:(
b
)
A.with
B.parent
C.class
D.void
以下的保留字不可以用作变量,函数名,对象名等,其中有的保留字是为以后JAVASCRIPT扩展用的.
·
abstract
·
boolean
·
break
·
byte
·
case
·
catch
·
char
·
class
·
const
·
continue
·
default
·
do
·
double
·
else
|
·
extends
·
false
·
final
·
finally
·
float
·
for
·
function
·
goto
·
if
·
implements
·
import
·
in
·
instanceof
|
·
int
·
interface
·
long
·
native
·
new
·
null
·
package
·
private
·
protected
·
public
·
return
·
short
·
static
|
·
super
·
switch
·
synchronized
·
this
·
throw
·
throws
·
transient
·
true
·
try
·
var
·
void
·
while
·
with
|
3
、请选择结果为真的表达式:(
c
)
A.null instanceof Object
(
if
(!(nullinstanceof Object))
是真的
)
B.null === undefined
C.null == undefined
D.NaN == NaN
(1) null确实可以理解为原始类型,不能当Object理解!
null,int,float.....
等这些用关键字表示的类型
,
都不属于
Object.
至于可以把
null
作为参数
,
只是特殊规定而已
.
可以这么理解
:
对象的引用代表的是一个内存的值,null是一个空引用,可以理解为内存的值为0;按这个意思对代码
(2)
function f1(){
}
1.
alert(f1 instanceof Function);//true
2.
alert(f1 instanceof Object);//true
3.
alert(Function instanceof Object);//true
4.
alert(Object instanceof Function);//true
Function 是Object的实例,Object又是Function的实例
Function是函数的构造函数,而Object也是函数,Function自身也是函数
Object.prototype是一切原型链的顶点,instanceof会查找整个原型链
-
alert(Function);
-
alert(Function.prototype);
-
alert(Function.__proto__);
-
alert(Object);
-
alert(Object.prototype);
-
alert(Object.__proto__);
-
alert((function(){}).prototype);
-
alert((function(){}).__proto__);
-
alert((function(){}).__proto__.prototype);
-
alert((function(){}).prototype.__proto__);
-
alert(Array.__proto__);
-
alert((123).__proto__);
-
alert((Number).__proto__);
-
alert(("test").__proto__);
-
alert((String).__proto__);
-
alert((true).__proto__);
-
alert((Boolean).__proto__);
二、不定项选择题
4
、请选择对
javascript
理解有误的:
(abcd)
A.JScript
是
javascript
的简称
B.javascript
是网景公司开发的一种
Java
脚本语言,其目的是为了简化
Java
的开发难度
C.FireFox
和
IE
存在大量兼容性问题的主要原因在于他们对
javascript
的支持不同上
D.AJAX
技术一定要使用
javascript
技术
5
、
foo
对象有
att
属性,那么获取
att
属性的值,以下哪些做法是可以的:()
A.foo.att
B.foo(“att”)
C.foo[“att”]
D.foo{“att”}
E.foo[“a”+”t”+”t”]
6
、在不指定特殊属性的情况下,哪几种
HTML
标签可以手动输入文本:(
ace
)
A.<TEXTAREA></TEXTAREA>
B.<INPUT type=”text”/>
C.<INPUT type=”hidden”/>
D.<DIV></DIV>
7
、以下哪些是
javascript
的全局函数:(
abc
)
A.escape
B.parseFloat
C.eval
D.setTimeout
E.alert
8
、关于
IFrame
表述正确的有:
(abcd)
A.
通过
IFrame
,网页可以嵌入其他网页内容,并可以动态更改
B.
在相同域名下,内嵌的
IFrame
可以获取外层网页的对象
C.
在相同域名下,外层网页脚本可以获取
IFrame
网页内的对象
D.
可以通过脚本调整
IFrame
的大小
9
、关于表格表述正确的有:(
abcde
)
A.
表格中可以包含
TBODY
元素
B.
表格中可以包含
CAPTION
元素
C.
表格中可以包含多个
TBODY
元素
D.
表格中可以包含
COLGROUP
元素
E.
表格中可以包含
COL
元素
10
、关于
IE
的
window
对象表述正确的有:(
acd
)
A.window.opener
属性本身就是指向
window
对象
B.window.reload()
方法可以用来刷新当前页面
C.window.location=”a.html”
和
window.location.href=”a.html”
的作用都是把当前页面替换成
a.html
页面
D.
定义了全局变量
g
;可以用
window.g
的方式来存取该变量
三、问答题:
1
、谈谈
javascript
数组排序方法
sort()
的使用,重点介绍
sort()
参数的使用及其内部机制
sort的实现的功能类似JAVA的比较器,数据排序从多维数组的第一维开始排序
可以自己定义排序方法,很不错的函数
2、简述DIV元素和SPAN元素的区别。
DIV有回车,SPAN没有
3、结合text这段结构,谈谈innerHTML outerHTML innerText之间的区别。
这个问题只要写一下看的很清楚
innerHTML对象里面的HTML,outerHTML包括对象和里面的
innerText对象里面的文本
4、说几条XHTML规范的内容(至少3条)
属性加引号,不能有不匹配的标签,加定义
5、对Web标准化(或网站重构)知道哪些相关的知识,简述几条你知道的Web标准?
网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的网站标准也分三方面:结构化标准语言,主要包括XHTML和XML;表现标准语言主要包括CSS;行为标准主要包括对象模型(如W3C DOM)、ECMAScript等。
四、程序题:
1、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。
<html>
<
head
>
<
script
>
function foo()
{
//
在此处添加代码
var rg = document.getElementsByName("radioGroup");
for( var i = 0; i < rg.length; i++ )
{
if( rg[i].checked )
{
alert("
你选择了第"
+ (i+1) + "
个单选框"
);
}
}
returnfalse;
}
</
script
>
</
head
>
<
body
>
<formname="form1"onsubmit="return foo();">
<inputtype="radio"name="radioGroup"/>
<inputtype="radio"name="radioGroup"/>
<inputtype="radio"name="radioGroup"/>
<inputtype="radio"name="radioGroup"/>
<inputtype="radio"name="radioGroup"/>
<inputtype="radio"name="radioGroup"/>
<inputtype="submit"/>
</form>
</
body
>
</
html
>
2、填充注释部分的函数体,使得foo()函数调用弹出”成功”的对话框。代码应尽量简短
<
html
>
<
head
>
<script>
function
foo()
{
var str = reverse('a,b,c,d,e,f,g');
alert(str);
if (str == 'g,f,e,d,c,b,a')
alert('
成功'
);
else alert('
失败'
);
}
function
reverse(str)
{
//
在此处加入代码,完成字符串翻转功能
var spl = str.split(',');
var newstr="";
for(i=spl.length-1;i>=0;i--)
{
newstr+=spl[i]+',';
}
newstr=newstr.substring(0,newstr.length-1)
return newstr;
}
</script>
</
head
>
<body>
<inputtype="button"value="str"onclick="foo()"/>
</body>
</
html
>