一、 單選題
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會查找整個原型鏈

  1. alert(Function); ??
  2. alert(Function.prototype); ??
  3. alert(Function.__proto__); ??
  4. alert(Object); ??
  5. alert(Object.prototype); ??
  6. alert(Object.__proto__); ??
  7. alert((function(){}).prototype); ??
  8. alert((function(){}).__proto__); ??
  9. alert((function(){}).__proto__.prototype); ??
  10. alert((function(){}).prototype.__proto__); ??
  11. alert(Array.__proto__); ??
  12. alert((123).__proto__); ??
  13. alert((Number).__proto__); ??
  14. alert(("test").__proto__); ??
  15. alert((String).__proto__); ??
  16. alert((true).__proto__); ??
  17. 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)語言,主要包括XHTMLXML;表現(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 >