Javascript面试笔试题
考试时间90分钟
一、不定项选择题(每题3分,共30分)
1.声明一个对象,给它加上name属性和show方法显示其name值,以下代码中正确
的是( D )
A.var obj = [name:"zhangsan",show:function(){alert(name);}];
B.var obj = {name:"zhangsan",show:”alert(https://www.wendangku.net/doc/e518232742.html,)”};
C.var obj = {name:"zhangsan",show:function(){alert(name);}};
D.var obj = {name:"zhangsan",show:function(){alert(https://www.wendangku.net/doc/e518232742.html,);}};
2.以下关于Array数组对象的说法不正确的是(CD)
A.对数组里数据的排序可以用sort函数,如果排序效果非预期,可以给sort函数加
一个排序函数的参数
B.reverse用于对数组数据的倒序排列
C.向数组的最后位置加一个新元素,可以用pop方法
D.unshift方法用于向数组删除第一个元素
3.要将页面的状态栏中显示“已经选中该文本框”,下列JavaScript语句正确的是( A )
A.window.status="已经选中该文本框"
B.document.status="已经选中该文本框"
C.window.screen="已经选中该文本框"
D.document.screen="已经选中该文本框"
4.点击页面的按钮,使之打开一个新窗口,加载一个网页,以下JavaScript代码中可行
的是(AD)
A.
onclick="open('new.html','_blank') "/>
B.
onclick="window.location='new.html';"/>
C.
onclick=" location.assign('new.html');"/>
D.
5.使用JavaScript向网页中输出
A.
document.write(
B.
document.write("
C.
D.
document.write("hello");
6.
以下说法中正确的是(CD)
A.在页面的第二个文本框中输入内容后,当鼠标离开第二个文本框时,第一个文本框
的内容不变
B.在页面的第一个文本框中输入内容后,当鼠标离开第一个文本框时,将在第二个文
本框中复制第一个文本框的内容
C.在页面的第二个文本框中输入内容后,当鼠标离开第二个文本框时,将在第一个文
本框中复制第二个文本框的内容
D.在页面的第一个文本框中输入内容后,当鼠标离开第一个文本框时,第二个文本框
的内容不变
7.下面的JavaScript语句中,(D)实现检索当前页面中的表单元素中的所有文本
框,并将它们全部清空
A.for(var i=0;i< form1.elements.length;i++) {
if(form1.elements[i].type=="text")
form1.elements[i].value="";}
B.for(var i=0;i if(forms[0].elements[i].type=="text") forms[0].elements[i].value=""; } C.if(document.form.elements.type=="text") form.elements[i].value=""; D.for(var i=0;i for(var j=0;j if(document.forms[i].elements[j].type=="text") document.forms[i].elements[j].value=""; } } 8.在表单(form1)中有一个文本框元素(fname),用于输入电话号码,格式如:010-********, 要求前3位是010,紧接一个“-”,后面是8位数字。要求在提交表单时,根据上述条件验证该文本框中输入内容的有效性,下列语句中,( A )能正确实现以上功能 A.var str= form1.fname.value; if(str.substr(0,4)!="010-" || str.substr(4).length!=8 || isNaN(parseFloat(str.substr(4)))) alert("无效的电话号码!"); B.var str= form1.fname.value; if(str.substr(0,4)!="010-" && str.substr(4).length!=8 && isNaN(parseFloat(str.substr(4)))) alert("无效的电话号码!"); C.var str= form1.fname.value; if(str.substr(0,3)!="010-" || str.substr(3).length!=8 || isNaN(parseFloat(str.substr(3)))) alert("无效的电话号码!"); D.var str= form1.fname.value; if(str.substr(0,4)!="010-" && str.substr(4).length!=8 && !isNaN(parseFloat(str.substr(4)))) alert("无效的电话号码!"); 9.关于正则表达式声明6位数字的邮编,以下代码正确的是( C ) A.var reg = /\d6/; B.var reg = \d{6}\; C.var reg = /\d{6}/; D.var reg = new RegExp("\d{6}"); 10.关于JavaScript里的xml处理,以下说明正确的是(BCD ) A.Xml是种可扩展标记语言,格式更规范,是作为未来html的替代 B.Xml一般用于传输和存储数据,是对html的补充,两者的目的不同 C.在JavaScript里解析和处理xml数据时,因为浏览器的不同,其做法也不同 D.在IE浏览器里处理xml,首先需要创建ActiveXObject对象 二、问答题 1.列举浏览器对象模型BOM里常用的至少4个对象,并列举window对象的常用方法至 少5个(10分) 对象:Window document location screen history navigator 方法:Alert() confirm() prompt() open() close() 2.简述列举文档对象模型DOM里document的常用的查找访问节点的方法并做简单说明 (10分) Document.getElementById 根据元素id查找元素 Document.getElementByName 根据元素name查找元素 Document.getElementTagName 根据指定的元素名查找元素 三、程序题 1、补充按钮事件的函数,确认用户是否退出当前页面,确认之后关闭窗口;(10分) function closeWin(){ //在此处添加代码 if(confirm("确定要退出吗?")){ window.close(); } } 2、写出简单描述html标签(不带属性的开始标签和结束标签)的正则表达式,并将以下字符串中的html标签去除掉(15分) var str = " 里面的段落
//
var reg = /<\/?\w+\/?>/gi;
var str = "
里面的段落
alert(str.replace(reg,""));
3、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。(10分)
function foo() {
//在此处添加代码
var rdo = document.form1.radioGroup;
for(var i =0 ;i if(rdo[i].checked){ alert("您选择的是第"+(i+1)+"个单选框"); } } }
4、完成函数showImg(),要求能够动态根据下拉列表的选项变化,更新图片的显示(15分)
function showImg (oSel) {
//在此处添加代码
var str = oSel.value;
document.getElementById("pic").src = str+".jpg";
}