、不定項(xiàng)選擇題 (每題3分,共30分)
1. 聲明一個(gè)對(duì)象,給它加上name屬性和show方法顯示其name值,以下代碼中正確的是(
D )
A. var obj = [name:"zhangsan",show:function(){alert(name);}];
B. var obj = {name:”zhangsan”,show:”alert(this.name)”};
C. var obj = {name:”zhangsan”,show:function(){alert(name);}};
D. var obj = {name:”zhangsan”,show:function(){alert(this.name);}};
2. 以下關(guān)于Array數(shù)組對(duì)象的說(shuō)法不正確的是(
CD )
A. 對(duì)數(shù)組里數(shù)據(jù)的排序可以用sort函數(shù),如果排序效果非預(yù)期,可以給sort函數(shù)加一個(gè)排序函數(shù)的參數(shù)
B. reverse用于對(duì)數(shù)組數(shù)據(jù)的倒序排列
C. 向數(shù)組的最后位置加一個(gè)新元素,可以用pop方法
D. unshift方法用于向數(shù)組刪除第一個(gè)元素
3. 要將頁(yè)面的狀態(tài)欄中顯示“已經(jīng)選中該文本框”,下列JavaScript語(yǔ)句正確的是(
A )
A. window.status=”已經(jīng)選中該文本框”
B. document.status=”已經(jīng)選中該文本框”
C. window.screen=”已經(jīng)選中該文本框”
D. document.screen=”已經(jīng)選中該文本框”
4. 點(diǎn)擊頁(yè)面的按鈕,使之打開(kāi)一個(gè)新窗口,加載一個(gè)網(wǎng)頁(yè),以下JavaScript代碼中可行的是(
AD )
A. <input type=”button” value=”new”
onclick=”open('new.html’, '_blank’)”/>
B. <input type=”button” value=”new”
onclick=”window.location=’new.html’;”/>
C. <input type=”button” value=”new”
onclick=”location.assign('new.html’);”/>
D. <form target=”_blank”action=”new.html”>
<inputtype=”submit” value=”new”/>
</form>
5. 使用JavaScript向網(wǎng)頁(yè)中輸出<h1>hello</h1>,以下代碼中可行的是(
BD )
A. <scripttype=”text/javascript”>
document.write(<h1>hello</h1>);
</script>
B. <scripttype=”text/javascript”>
document.write(“<h1>hello</h1>”);
</script>
C. <scripttype=”text/javascript”>
<h1>hello</h1>
</script>
D. <h1>
<scripttype=”text/javascript”>
document.write(“hello”);
</script>
</h1>
6. 分析下面的代碼:
<html>
<head>
<script type=”text/javascript”>
function writeIt (value) { document.myfm.first_text.value=value;}
</script>
</head>
<body bgcolor=”#ffffff”>
<form name=”myfm”>
<input type=”text” name=”first_text”>
<input type=”text” name=”second_text”>
</form>
</body>
</html>
以下說(shuō)法中正確的是( CD )
A. 在頁(yè)面的第二個(gè)文本框中輸入內(nèi)容后,當(dāng)鼠標(biāo)離開(kāi)第二個(gè)文本框時(shí),第一個(gè)文本框的內(nèi)容不變
B. 在頁(yè)面的第一個(gè)文本框中輸入內(nèi)容后,當(dāng)鼠標(biāo)離開(kāi)第一個(gè)文本框時(shí),將在第二個(gè)文本框中復(fù)制第一個(gè)文本框的內(nèi)容
C. 在頁(yè)面的第二個(gè)文本框中輸入內(nèi)容后,當(dāng)鼠標(biāo)離開(kāi)第二個(gè)文本框時(shí),將在第一個(gè)文本框中復(fù)制第二個(gè)文本框的內(nèi)容
D. 在頁(yè)面的第一個(gè)文本框中輸入內(nèi)容后,當(dāng)鼠標(biāo)離開(kāi)第一個(gè)文本框時(shí),第二個(gè)文本框的內(nèi)容不變
7. 下面的JavaScript語(yǔ)句中,( D )實(shí)現(xiàn)檢索當(dāng)前頁(yè)面中的表單元素中的所有文本框,并將它們?nèi)壳蹇?BR>A. for(vari=0;i< form1.elements.length;i++) {
if(form1.elements.type==”text”)
form1.elements.value=”";}
B. for(vari=0;i<document.forms.length;i++) {
if(forms[0].elements.type==”text”)
forms[0].elements.value=”";
}
C. if(document.form.elements.type==”text”)
form.elements.value=”";
D. for(vari=0;i<document.forms.length; i++){
for(var j=0;j<document.forms.elements.length; j++){
if(document.forms.elements[j].type==”text”)
document.forms.elements[j].value=”";
}
}
8. 在表單(form1)中有一個(gè)文本框元素(fname),用于輸入電話號(hào)碼,格式如:010-82668155,要求前3位是010,緊接一個(gè)“-”,后面是8位數(shù)字。要求在提交表單時(shí),根據(jù)上述條件驗(yàn)證該文本框中輸入內(nèi)容的有效性,下列語(yǔ)句中,( A )能正確實(shí)現(xiàn)以上功能
A. var str= form1.fname.value;
if(str.substr(0,4)!=”010-”|| str.substr(4).length!=8 ||
isNaN(parseFloat(str.substr(4))))
alert(“無(wú)效的電話號(hào)碼!”);
B. var str= form1.fname.value;
if(str.substr(0,4)!=”010-” && str.substr(4).length!=8 &&
isNaN(parseFloat(str.substr(4))))
alert(“無(wú)效的電話號(hào)碼!”);
C. var str= form1.fname.value;
if(str.substr(0,3)!=”010-”|| str.substr(3).length!=8 ||
isNaN(parseFloat(str.substr(3))))
alert(“無(wú)效的電話號(hào)碼!”);
D. var str= form1.fname.value;
if(str.substr(0,4)!=”010-”&& str.substr(4).length!=8 &&
!isNaN(parseFloat(str.substr(4))))
alert(“無(wú)效的電話號(hào)碼!”);
9. 關(guān)于正則表達(dá)式聲明6位數(shù)字的郵編,以下代碼正確的是( C )
A. var reg = /\d6/;
B. var reg = \d{6}\;
C. var reg = /\d{6}/;
D. var reg = new RegExp(“\d{6}”);
10. 關(guān)于JavaScript里的xml處理,以下說(shuō)明正確的是( BCD )
A. Xml是種可擴(kuò)展標(biāo)記語(yǔ)言,格式更規(guī)范,是作為未來(lái)html的替代
B. Xml一般用于傳輸和存儲(chǔ)數(shù)據(jù),是對(duì)html的補(bǔ)充,兩者的目的不同
C. 在JavaScript里解析和處理xml數(shù)據(jù)時(shí),因?yàn)闉g覽器的不同,其做法也不同
D. 在IE瀏覽器里處理xml,首先需要?jiǎng)?chuàng)建ActiveXObject對(duì)象
二、問(wèn)答題
1. 列舉瀏覽器對(duì)象模型BOM里常用的至少4個(gè)對(duì)象,并列舉window對(duì)象的常用方法至少5個(gè) (10分)
對(duì)象:Window document location screen history navigator
方法:Alert() confirm() prompt() open() close()
2. 簡(jiǎn)述列舉文檔對(duì)象模型DOM里document的常用的查找訪問(wèn)節(jié)點(diǎn)的方法并做簡(jiǎn)單說(shuō)明 (10分)
Document.getElementById 根據(jù)元素id查找元素
Document.getElementByName 根據(jù)元素name查找元素
Document.getElementTagName 根據(jù)指定的元素名查找元素
三、程序題
1、補(bǔ)充按鈕事件的函數(shù),確認(rèn)用戶是否退出當(dāng)前頁(yè)面,確認(rèn)之后關(guān)閉窗口; (10分)
<html>
<head>
<script type=”text/javascript” >
function closeWin(){
//在此處添加代碼
if(confirm(“確定要退出嗎?”)){
window.close();
}
}
</script>
</head>
<body>
<input type=”button”value=”關(guān)閉窗口”onclick=”closeWin()”/>
</body>
</html>
2、寫出簡(jiǎn)單描述html標(biāo)簽(不帶屬性的開(kāi)始標(biāo)簽和結(jié)束標(biāo)簽)的正則表達(dá)式,并將以下字符串中的html標(biāo)簽去除掉(15分)
var str = “<div>這里是div<p>里面的段落</p></div>”;
//
<scripttype=”text/javascript”>
varreg = /<\/?\w+\/?>/gi;
varstr = “<div>這里是div<p>里面的段落</p></div>”;
alert(str.replace(reg,”"));
</script>
3、完成foo()函數(shù)的內(nèi)容,要求能夠彈出對(duì)話框提示當(dāng)前選中的是第幾個(gè)單選框。(10分)
<html>
<head>
<metahttp-equiv=”Content-Type” content=”text/html;charset=utf-8″ />
</head>
<body>
<script type=”text/javascript” >
function foo() {
//在此處添加代碼
var rdo =document.form1.radioGroup;
for(var i =0 ;i<rdo.length;i++){
if(rdo.checked){
alert(“您選擇的是第”+(i+1)+”個(gè)單選框”);
}
}
}
</script>
<body>
<form name=”form1″ >
<input type=”radio” name=”radioGroup”/>
<input type=”radio” name=”radioGroup”/>
<input type=”radio” name=”radioGroup”/>
<input type=”radio” name=”radioGroup”/>
<input type=”submit”/>
</form>
</body>
</html>
4、完成函數(shù)showImg(),要求能夠動(dòng)態(tài)根據(jù)下拉列表的選項(xiàng)變化,更新圖片的顯示 (15分)
<body>
<script type=”text/javascript” >
function showImg (oSel) {
//在此處添加代碼
var str = oSel.value;
document.getElementById(“pic”).src= str+”.jpg”;
}
</script>
<img id=”pic”src=”img1.jpg”width=”200″ height=”200″ />
<br />
<select id=”sel”>
<option value=”img1“>城市生活</option>
<option value=”img2“>都市早報(bào)</option>
<option value=”img3“>青山綠水</option>
</select></body>