JavaScript試題練習題
1. 我們可以在下列哪個HTML元素中放置javascript程式碼?
A.< script >
B.<javascript >
C.< js >
D.<scripting >
★標準答案:A
2. 預測以下程式碼片段的輸出結果:
var str
alert(typeof str);
A.. string
B..undefined;
C..object
D..String;
★標準答案:B
3. 下列哪個不是Javascript中註釋的正確寫法:( ) A.< !-- …… -- >
B.//……
C./*……*/
D. /* …… */
★標準答案:A
4. 以下哪項不屬於Javascript的特徵? A.Javascript是一種指令碼語言 B.Javascript是事件驅動的 C.Javascript程式碼需要編譯以後才能執行
D.Javascript是獨立於平臺的
★標準答案:C
5. 關於以下兩個陳述的描述中,正確的是:( ) 陳述1:Javascript是弱型別語言 陳述2:Javascript的常用型別包括:int、string、boolean A.陳述1正確,陳述2錯誤 B.陳述1錯誤,陳述2正確
C.兩個陳述都正確
D.兩個陳述都錯誤
★標準答案:A
6. 閱讀下面的JavaScript程式碼:
<HTML > < BODY >
<SCRIPT LANGUAGE="JavaScript" >
function f(y) {
varx=y*y;
return x;
}
for(x=0;x< 5;x++) {
y=f(x);
document.writeln(y);
}
< /SCRIPT > < /BODY > </HTML >
輸出結果是()。
A.01 2 3 4
B.0 1 4 9 16
C.0 1 4 9 16 25
D.以上答案都不對
★標準答案:B
7. 在Javascript中,需要宣告一個整數型別的變數num,以下哪個語句能實現上述要求? A.int num;
B.number num;
C.var num; D.Integer num;
★標準答案:C
8. 關於Javascript中陣列的說法中,不正確的是:()
A.陣列的長度必須在建立時給定,之後便不能改變
B.由於陣列是物件,因此建立陣列需要使用new運算子
C.陣列內元素的型別可以不同
D.陣列可以在宣告的同時進行初始化
★標準答案:A
9. 除了一些常規的運算子之外,Javascript還提供了一些特殊的運算子。下面不屬於Javascript特殊運算子的是:() A.delete
B.size
C.new
D.typeof ★標準答案:B
10. 以下關於Javascript中事件的描述中,不正確的是:()
A.click——滑鼠單擊事件
B.focus——獲取焦點事件
C.mouseOver——滑鼠指標移動到事件源物件上時觸發的事件 D.change——選擇欄位時觸發的事件
★標準答案:D
11. 考察以下程式片段: var n = newNumber(3456); alert(n.toFixed(2)); 以下選項正確的是:( )
A.輸出34 B.輸出 56 C.輸出 3456.00 D.輸出 345600 ★標準答案:C
12.
考察以下程式碼片段:
function Student(name) {
this.name = name;
this.move = function() {
alert(this.name+”準備移動了”); } }
Student.prototype.move = function() {
alert(this.name+”開始移動了!”); }
varst = new Student(“李四);
st.study();
下列說法正確的是?
A.輸出 ”李四準備移動了” B.輸出 ”李四開始移動了” C.輸出 ”李四準備移動了 李四開始移動了”” D.程式出錯,沒有任何輸出。 ★標準答案:A
13. 預測以下程式碼片段的輸出結果:function add(i) { var k = i+10; alert(k); } function add(i) { var k = i+20; alert(k); } add(10); A.40 B.20 C.30 D.程式出錯
★標準答案:C
14. 預測以下程式碼片段的輸出結果
: var student = new Object(); student.study = function() {window.alert(“開始學習了”); }study(); A.輸出“開始學習了”
B.程式出錯。不能在例項化物件之後,再新增方法
C.程式出錯。study()方法不能直接呼叫。應該用student來呼叫
D.程式出錯。給student.study賦值時,右邊的函式必須有名字 ★標準答案:C
15. 考察以下程式片段: varstr = “32px”; var str1 = str.slice(-2); alert(str); alert(str1); 以下選項正確的是?
A.依次輸出”px” “px”
B.依次輸出”32” “32”
C.依次輸出”32px” “px”
D.依次輸出”32px” “32px” ★標準答案:C
16. 考察以下程式片段: var str = “12px”; var s =str.indexof(“2”); alert(s);
以下選項正確的是?
A.輸出 1 B.輸出 2 C.輸出 p D.輸出 12 ★標準答案:A
17. 考察以下程式片段:
function Person() {
}
Person.prototype.move = function() {
alert(this.name+“移動”);}
function Student(name) {
this.name = name; }
Student.prototype.study = function() {
alert(this.name+”學習”); }
Student.prototype = new Person(); var st =new Student(“張三丰”);
st.study();
st.move();
以下選項正確的是?
A.依次輸出”張三丰學習” “百曉生移動”
B.依次輸出”張三丰學習” “移動”
C.輸出”張三丰學習” ,之後程式出錯
D.程式出錯,什麼都不能輸出
★標準答案:D
18. 以下不屬於Javascript原始型別的是:()
A.string B.number
C.function D.boolean ★標準答案:C
19. 以下哪段程式碼不能正確建立函式show()?
A.function show(text){ alert(text); }
B.var showFun = function show(text){alert(text); }
C.var showFun = function(text){alert(text); }
D.var showFun =newfunction("text" , "alert(text)"}; ★標準答案:D
20. Javascript是如何實現繼承的?
A.建立父類物件作為子類的原型(prototype)
B.使用extends關鍵子繼承父類
C.建立子類物件作為父類的原型(prototype)
D.使用class關鍵子繼承父類
★標準答案:A
21. 在JavaScript中,下列哪段程式碼能夠在1秒之後執行表示式expression? A.window.setTimeout(1000,expression);
B.window.setTimeout(expression,1);
C.window.setTimeout(1,expression);
D.window.setTimeout(expression,1000);
★標準答案:D
22. < body onLoad="f1()"onError="f2()' > < inputonFocus="g1()" onBlur()="g2()" > < /body > 下列方法一定會被呼叫的是:( )
A.f1()
B.f2()
C.g1()
D.g2() ★標準答案:A
23. 以下哪個選項中的方法全部屬於window物件:( )
A.alert,clear,close B.clear,close,open C.alert,close,confirm D.alert,setTimeout,write ★標準答案:C
24. 與image物件不相關的事件處理是下列哪項:( )
A.onError
B.onMouseOut
C.onLoad D.onOpen ★標準答案:D
25. 在JavaScript中,如果不指明物件直接呼叫某個方法,則該方法預設屬於哪個物件:() A.document B.window
C.form
D.location
★標準答案:B
26. 開啟名為“window2”的新視窗的JavaScript語法是:( ) A.window.new("http://www.w3schools.com","window2")
B.window.open("http://www.w3schools.com","window2","")
C.new("http://www.w3schools.com","window2")
D.new.window("http://www.w3schools.com","window2") ★標準答案:B
27. 如何在瀏覽器的狀態列放入一條訊息:( )
A.statusbar = "put your messagehere"
B.window.status = "put your messagehere"
C.window.status("put your messagehere")
D.status("put your messagehere") ★標準答案:B
28. 與window物件無關的屬性是下列哪項:( )
A.top B.self
C.left D.frames ★標準答案:C
29. history從屬於window,下列能訪問前一頁面方法是:( )
A.back(-1) B.back(1) C.forward(1) D.go(-1) ★標準答案:D
30. 關於以下兩個陳述的描述中,正確的是:()
陳述1:window物件的confirm方法用於顯示一個包括相關資訊以及Yes和No這兩個按鈕的對話方塊。陳述2:window物件的alert方法用於彈出一個提示視窗,顯示提示資訊。()
A.陳述1正確,陳述
2錯誤
B.陳述1錯誤,陳述2正確
C.陳述1和陳述2均正確
D.陳述1和陳述2均錯誤 ★標準答案:B
31. 下列不是document物件的屬性的是:( )
A.anchors B.forms C.location D.image ★標準答案:D
32. 下列說法有誤的是()
A.event是window物件的一個屬性,所以可以直接引用event物件
B.不同的瀏覽器事件處理的方式可能不同
C.對於同一事件,子物件的事件處理函式會覆蓋父物件的事件處理函式 D.事件可以增強使用者與頁面的互動 ★標準答案:C
33. 考察以下程式碼片段,預測在
IE中開啟該頁面,點選按鈕時的輸出結果為:( )
<body>
<form name=”form1”>
<INPUT type="button" name="button1" value="測試按鈕" />
</form>
</body>
<script>
document.form1.button1.attachEvent(“onclick”,"alert('被點選了!')"); document.form1.button1.attachEvent(“onclick”,"alert('被點選了……..')");
</script>(10分)
A.輸出 “被點選了!”
B.輸出 “被點選了……..’”
C.依次輸出“被點選了……..” “被點選了!”
D.依次輸出“
被點選了!”“被點選了……..” ★標準答案:C
34. 考察以下程式碼片段,預測輸出結果( )
<script>
function handleEvent()
{ alert("我被點選了!");}
document.form1.button1.onclick =handleEvent;
</script>
<body>
<form name=”form1”>
<INPUT type="button" name="button1" value="測試按鈕" />
</form>
</body>
A.輸出 “我被點選了”
B.沒有錯誤,但也沒有任何輸出。
C.出現錯誤,沒有任何輸出。
D.出現錯誤,但輸出 “我被點選了” ★標準答案:C
35. 考察以下程式碼片段:
<scripttype="text/JavaScript">
function handleEvent() {
var oTextbox =document.getElementById("txt1");
oTextbox.value += " " + event.type;//event是所觸發的事件物件
}
</script> 請在文字框中操作鍵盤:
<input type="text" id="txt"size="5"
onkeydown="handleEvent()"
onkeyup="handleEvent()"
onkeypress="handleEvent()"/>
<textarea id="txt1" rows="6" cols="30"></textarea>----------------------------------------------------------------- 如果游標定位文字框中,敲擊鍵盤的shift鍵,文字域中的輸出結果為:(
)
A.keydown keyup keypress
B.keydown keyup
C.keydown D.keyup
★標準答案:B
36. 分析下面的程式碼:
< HTML >
< BODY >
< SELECT type="select" name=s1onChange=alert("你選擇了"+s1.value) >
<OPTION selected value=select1 >北京< /OPTION>
< OPTION value=select2 >上海</OPTION >
< OPTION value=select3 >廣州</OPTION >
< /SELECT >
< /BODY >
</HTML >
下面對結果的描述正確的是:( )。
A.當選中“上海”時,彈出“你選擇了select2”資訊框
B.當選中“廣州”時,彈出“你選擇了廣州”資訊框
C.任何時候選中“北京”時,不彈出資訊框
D.程式碼有錯誤,應該將“onChange”修改為“onClick”
★標準答案:A
37.下列哪個不是js的事件型別()
A.動作事件
B.滑鼠事件
C.鍵盤事件
D.HTML頁面事件 ★標準答案:A
38. 下列關於滑鼠事件描述有誤的是()
A.click表示滑鼠單擊
B.dblclick表示滑鼠右擊
C.mousedown表示滑鼠的按鈕被按下
D.mousemove表示滑鼠進入某個物件範圍,並且移動 ★標準答案:B
39. 考察以下程式碼片段:
<formaction="#" name="form1">
<input type="button" name="button1" value="按鈕1"/>
<input type="button" name="button2" value="按鈕2"/>
</form>
<script type="text/javascript">
function handleEvent1(){
document.form1.button2.click(); }
function handleEvent2() {
alert(event.srcElement.name+"的"+event.type+"事件被觸發!"); } document.form1.button1.onclick = handleEvent1;
document.form1.button2.onclick =handleEvent2;
</script>
如果使用者點選了按鈕1,此時輸出結果為:
A.輸出 “button2的click事件被觸發!”
B.輸出 “button1的click事件被觸發!”
C.程式出錯,沒有輸出
D.依次輸出“button1的click事件被觸發!” “button2的click事件被觸發!”
★標準答案:A
40.
下列陳述有誤的是()
陳述一:一個button的click事件只能新增一個事件處理函式
陳述二:js事件一旦新增就無法銷燬
A.陳述1正確,陳述2錯誤
B.陳述1錯誤,陳述2正確
C.兩種陳述都正確
D.兩種陳述都錯誤 ★標準答案:D
41. 事件是按照DOM層次結構的由高到低順序依次觸發,則該事件流屬於( )
A.冒泡型
B.捕獲型
C.DOM型
D.BOM型
★標準答案:B
42 預測以下程式碼片段執行結果:
var reg = /^\w+,Java\w*$/
var str = “Hello,JavaScript!”;
var b = str.match(reg);
document.write(b);
A.輸出Hello,JavaScript! B.輸出Java C.輸出 null D.輸出false ★標準答案:C
43. 下列正則表示式量詞符號與含義不匹配的是()
A.{n,}:至少出現n次
B.{n,m}:出現m-n次
C.?:出現0-1次
D.*:出現任意次 ★標準答案:B
44. 下列正則表示式中描述有誤的是()
A.[] :匹配範圍內的任意一個字元
B.{n:匹配n次
C.\w:匹配任意字母、數字、下劃線、符號
D.\d:匹配0-9之間的任意數字 ★標準答案:C
45. 一年有12個月。現要求月份的正確格式為: 1,2,….9,10,11,12。以下哪個正則表示式可以符合要求?
A./^[1-12]$/
B./^[1-9]\d?$/
C./^([1-9]︱1[0-2])$/
D./^\d︱11︱12︱10$/
★標準答案:C
46. 下列與表示式/^[0-9]+$/相符的是()
A.123
B.a123
C.123a
D.a
★標準答案:A
47. 下面那個方法能判斷字串中是否存在和指定正則表示式匹配的字串;是則返回true,否則返回false:()
A.RegExp物件的test()方法
B.RegExp物件的exec()方法
C.String物件的search()方法
D.String物件的match()方法 ★標準答案:A
48. 關於以下兩種陳述,說法正確的是?
陳述1:RegExp的search(str)方法返回字串中與正則表示式相匹配的字串的位置
陳述2:String的test(str) 方法用於測試字串是否與正則表示式相匹配。
A.陳述1正確,陳述2錯誤
B.陳述1錯誤,陳述2正確
C.兩種陳述都正確
D.兩種陳述都錯誤 ★標準答案:D
49. 下列對應關係有誤的是()
A.\n 對應換行符
B.\t對應 製表符
C.\r對應 回車符
D.\f 對應空格符 ★標準答案:D
50. 下列與表示式/^\d{3,5$/相符的是()
A.3 B.4 C.5 D.345 ★標準答案:D
51. 下列關於正則表示式的標誌與它的含義表達有誤的是()
A.i--忽略大小寫 B.g--匹配全部
C.m--匹配多行D.*--匹配任意
★標準答案:D