一、 單選題
1
、以下哪條語(yǔ)句會(huì)產(chǎn)生運(yùn)行錯(cuò)誤:( a
A.var obj = ();//
語(yǔ)法錯(cuò)誤
B.var obj = [];//
創(chuàng)建數(shù)組
C.var obj = {};//
創(chuàng)建對(duì)象
D.var obj = //;

原因:var obj = new Array ();是對(duì)的;JavaScript 中大括號(hào)表示創(chuàng)建對(duì)象。var obj = { id:1, name:"jacky" };alert(obj.name);上例表示創(chuàng)建一個(gè)具有屬性 id (值為 1)、屬性 name(值為 jacky)的對(duì)象。屬性名稱可以用引號(hào)引起來(lái)成 "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 、以下哪個(gè)單詞不屬于 javascript 保留字:( b
A.with
B.parent
C.class
D.void

以下的保留字不可以用作變量,函數(shù)名,對(duì)象名等,其中有的保留字是為以后JAVASCRIPT擴(kuò)展用的.

· ?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 、請(qǐng)選擇結(jié)果為真的表達(dá)式:( c
A.null instanceof Object
if (!(nullinstanceof Object)) 是真的
B.null === undefined
C.null == undefined
D.NaN == NaN

(1) null確實(shí)可以理解為原始類(lèi)型,不能當(dāng)Object理解!

null,int,float..... 等這些用關(guān)鍵字表示的類(lèi)型 , 都不屬于 Object.

至于可以把 null 作為參數(shù) , 只是特殊規(guī)定而已 .

可以這么理解 :

對(duì)象的引用代表的是一個(gè)內(nèi)存的值,null是一個(gè)空引用,可以理解為內(nèi)存的值為0;按這個(gè)意思對(duì)代碼

(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的實(shí)例,Object又是Function的實(shí)例

Function是函數(shù)的構(gòu)造函數(shù),而Object也是函數(shù),Function自身也是函數(shù)
Object.prototype是一切原型鏈的頂點(diǎn),instanceof會(huì)查找整個(gè)原型鏈

  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__);?

二、不定項(xiàng)選擇題
4
、請(qǐng)選擇對(duì) javascript 理解有誤的: (abcd)
A.JScript
javascript 的簡(jiǎn)稱
B.javascript
是網(wǎng)景公司開(kāi)發(fā)的一種 Java 腳本語(yǔ)言,其目的是為了簡(jiǎn)化 Java 的開(kāi)發(fā)難度
C.FireFox
IE 存在大量兼容性問(wèn)題的主要原因在于他們對(duì) javascript 的支持不同上
D.AJAX
技術(shù)一定要使用 javascript 技術(shù)
5
foo 對(duì)象有 att 屬性,那么獲取 att 屬性的值,以下哪些做法是可以的:()
A.foo.att
B.foo(“att”)
C.foo[“att”]
D.foo{“att”}
E.foo[“a”+”t”+”t”]
6
、在不指定特殊屬性的情況下,哪幾種 HTML 標(biāo)簽可以手動(dòng)輸入文本:( 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.
通過(guò) IFrame ,網(wǎng)頁(yè)可以嵌入其他網(wǎng)頁(yè)內(nèi)容,并可以動(dòng)態(tài)更改
B.
在相同域名下,內(nèi)嵌的 IFrame 可以獲取外層網(wǎng)頁(yè)的對(duì)象
C.
在相同域名下,外層網(wǎng)頁(yè)腳本可以獲取 IFrame 網(wǎng)頁(yè)內(nèi)的對(duì)象
D.
可以通過(guò)腳本調(diào)整 IFrame 的大小
9
、關(guān)于表格表述正確的有:( abcde
A.
表格中可以包含 TBODY 元素
B.
表格中可以包含 CAPTION 元素
C.
表格中可以包含多個(gè) TBODY 元素
D.
表格中可以包含 COLGROUP 元素
E.
表格中可以包含 COL 元素
10
、關(guān)于 IE window 對(duì)象表述正確的有:( acd
A.window.opener
屬性本身就是指向 window 對(duì)象
B.window.reload()
方法可以用來(lái)刷新當(dāng)前頁(yè)面
C.window.location=”a.html”
window.location.href=”a.html” 的作用都是把當(dāng)前頁(yè)面替換成 a.html 頁(yè)面
D.
定義了全局變量 g ;可以用 window.g 的方式來(lái)存取該變量
三、問(wèn)答題:
1
、談?wù)?/span> javascript 數(shù)組排序方法 sort() 的使用,重點(diǎn)介紹 sort() 參數(shù)的使用及其內(nèi)部機(jī)制

sort的實(shí)現(xiàn)的功能類(lèi)似JAVA的比較器,數(shù)據(jù)排序從多維數(shù)組的第一維開(kāi)始排序
可以自己定義排序方法,很不錯(cuò)的函數(shù)
2、簡(jiǎn)述DIV元素和SPAN元素的區(qū)別。

DIV有回車(chē),SPAN沒(méi)有
3、結(jié)合text這段結(jié)構(gòu),談?wù)?/span>innerHTML outerHTML innerText之間的區(qū)別。

這個(gè)問(wèn)題只要寫(xiě)一下看的很清楚
innerHTML對(duì)象里面的HTML,outerHTML包括對(duì)象和里面的
innerText對(duì)象里面的文本
4、說(shuō)幾條XHTML規(guī)范的內(nèi)容(至少3條)

屬性加引號(hào),不能有不匹配的標(biāo)簽,加定義
5、對(duì)Web標(biāo)準(zhǔn)化(或網(wǎng)站重構(gòu))知道哪些相關(guān)的知識(shí),簡(jiǎn)述幾條你知道的Web標(biāo)準(zhǔn)?

網(wǎng)頁(yè)主要由三部分組成:結(jié)構(gòu)(Structure)、表現(xiàn)(Presentation)和行為(Behavior)。對(duì)應(yīng)的網(wǎng)站標(biāo)準(zhǔn)也分三方面:結(jié)構(gòu)化標(biāo)準(zhǔn)語(yǔ)言,主要包括XHTMLXML;表現(xiàn)標(biāo)準(zhǔn)語(yǔ)言主要包括CSS;行為標(biāo)準(zhǔn)主要包括對(duì)象模型(如W3C DOM)、ECMAScript等。
四、程序題:
1
、完成foo()函數(shù)的內(nèi)容,要求能夠彈出對(duì)話框提示當(dāng)前選中的是第幾個(gè)單選框。
<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) + " 個(gè)單選框" );

?????? }

??? }

???? 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)用彈出”成功”的對(duì)話框。代碼應(yīng)盡量簡(jiǎn)短

< 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 >