一、
單選題
1
、以下哪條語句會產(chǎn)生運行錯誤:(
a
)
A.var obj = ();//
語法錯誤
B.var obj = [];//
創(chuàng)建數(shù)組
C.var obj = {};//
創(chuàng)建對象
D.var obj = //;
原因:var obj = new Array ();是對的;JavaScript 中大括號表示創(chuàng)建對象。var obj = { id:1, name:"jacky" };alert(obj.name);上例表示創(chuàng)建一個具有屬性 id (值為 1)、屬性 name(值為 jacky)的對象。屬性名稱可以用引號引起來成 "id"、"name",也可以不引。
當(dāng)然除了屬性,也可以創(chuàng)建方法。
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
以下的保留字不可以用作變量,函數(shù)名,對象名等,其中有的保留字是為以后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
、請選擇結(jié)果為真的表達(dá)式:(
c
)
A.null instanceof Object
(
if
(!(nullinstanceof Object))
是真的
)
B.null === undefined
C.null == undefined
D.NaN == NaN
(1) null確實可以理解為原始類型,不能當(dāng)Object理解!
null,int,float.....
等這些用關(guān)鍵字表示的類型
,
都不屬于
Object.
至于可以把
null
作為參數(shù)
,
只是特殊規(guī)定而已
.
可以這么理解
:
對象的引用代表的是一個內(nèi)存的值,null是一個空引用,可以理解為內(nèi)存的值為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是函數(shù)的構(gòu)造函數(shù),而Object也是函數(shù),Function自身也是函數(shù)
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
是網(wǎng)景公司開發(fā)的一種
Java
腳本語言,其目的是為了簡化
Java
的開發(fā)難度
C.FireFox
和
IE
存在大量兼容性問題的主要原因在于他們對
javascript
的支持不同上
D.AJAX
技術(shù)一定要使用
javascript
技術(shù)
5
、
foo
對象有
att
屬性,那么獲取
att
屬性的值,以下哪些做法是可以的:()
A.foo.att
B.foo(“att”)
C.foo[“att”]
D.foo{“att”}
E.foo[“a”+”t”+”t”]
6
、在不指定特殊屬性的情況下,哪幾種
HTML
標(biāo)簽可以手動輸入文本:(
ace
)
A.<TEXTAREA></TEXTAREA>
B.<INPUT type=”text”/>
C.<INPUT type=”hidden”/>
D.<DIV></DIV>
7
、以下哪些是
javascript
的全局函數(shù):(
abc
)
A.escape
B.parseFloat
C.eval
D.setTimeout
E.alert
8
、關(guān)于
IFrame
表述正確的有:
(abcd)
A.
通過
IFrame
,網(wǎng)頁可以嵌入其他網(wǎng)頁內(nèi)容,并可以動態(tài)更改
B.
在相同域名下,內(nèi)嵌的
IFrame
可以獲取外層網(wǎng)頁的對象
C.
在相同域名下,外層網(wǎng)頁腳本可以獲取
IFrame
網(wǎng)頁內(nèi)的對象
D.
可以通過腳本調(diào)整
IFrame
的大小
9
、關(guān)于表格表述正確的有:(
abcde
)
A.
表格中可以包含
TBODY
元素
B.
表格中可以包含
CAPTION
元素
C.
表格中可以包含多個
TBODY
元素
D.
表格中可以包含
COLGROUP
元素
E.
表格中可以包含
COL
元素
10
、關(guān)于
IE
的
window
對象表述正確的有:(
acd
)
A.window.opener
屬性本身就是指向
window
對象
B.window.reload()
方法可以用來刷新當(dāng)前頁面
C.window.location=”a.html”
和
window.location.href=”a.html”
的作用都是把當(dāng)前頁面替換成
a.html
頁面
D.
定義了全局變量
g
;可以用
window.g
的方式來存取該變量
三、問答題:
1
、談?wù)?/span>
javascript
數(shù)組排序方法
sort()
的使用,重點介紹
sort()
參數(shù)的使用及其內(nèi)部機制
sort的實現(xiàn)的功能類似JAVA的比較器,數(shù)據(jù)排序從多維數(shù)組的第一維開始排序
可以自己定義排序方法,很不錯的函數(shù)
2、簡述DIV元素和SPAN元素的區(qū)別。
DIV有回車,SPAN沒有
3、結(jié)合text這段結(jié)構(gòu),談?wù)?/span>innerHTML outerHTML innerText之間的區(qū)別。
這個問題只要寫一下看的很清楚
innerHTML對象里面的HTML,outerHTML包括對象和里面的
innerText對象里面的文本
4、說幾條XHTML規(guī)范的內(nèi)容(至少3條)
屬性加引號,不能有不匹配的標(biāo)簽,加定義
5、對Web標(biāo)準(zhǔn)化(或網(wǎng)站重構(gòu))知道哪些相關(guān)的知識,簡述幾條你知道的Web標(biāo)準(zhǔn)?
網(wǎng)頁主要由三部分組成:結(jié)構(gòu)(Structure)、表現(xiàn)(Presentation)和行為(Behavior)。對應(yīng)的網(wǎng)站標(biāo)準(zhǔn)也分三方面:結(jié)構(gòu)化標(biāo)準(zhǔn)語言,主要包括XHTML和XML;表現(xiàn)標(biāo)準(zhǔn)語言主要包括CSS;行為標(biāo)準(zhǔn)主要包括對象模型(如W3C DOM)、ECMAScript等。
四、程序題:
1、完成foo()函數(shù)的內(nèi)容,要求能夠彈出對話框提示當(dāng)前選中的是第幾個單選框。
<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、填充注釋部分的函數(shù)體,使得foo()函數(shù)調(diào)用彈出”成功”的對話框。代碼應(yīng)盡量簡短
<
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)
{
?? //
在此處加入代碼,完成字符串翻轉(zhuǎn)功能
??? 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
>