一、單選題 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(!(null instanceof 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__);
/* window.onload=function()
{
if(NaN == NaN)
{
alert("ddd");
}
}
*/
二、不定項選擇題 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()函數的內容,要求能夠彈出對話框提示當前選中的是第幾個單選框。
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
2、填充注釋部分的函數體,使得foo()函數調用彈出”成功”的對話框。代碼應盡量簡短。
[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]