收藏 分销(赏)

网页前端整理的笔试题目.doc

上传人:仙人****88 文档编号:11150505 上传时间:2025-07-03 格式:DOC 页数:14 大小:92KB 下载积分:10 金币
下载 相关 举报
网页前端整理的笔试题目.doc_第1页
第1页 / 共14页
网页前端整理的笔试题目.doc_第2页
第2页 / 共14页


点击查看更多>>
资源描述
经典的 Web 前端或者 JavaScript 面试笔试题 一、不定项选择题 (每题3分,共30分) 1. 声明一个对象,给它加上name属性和show方法显示其name值,以下代码中正确的是( ) 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. 以下关于Array数组对象的说法不正确的是( ) A. 对数组里数据的排序可以用sort函数,如果排序效果非预期,可以给sort函数加一个排序函数的参数 B. reverse用于对数组数据的倒序排列 C. 向数组的最后位置加一个新元素,可以用pop方法 最后添加push最后删除pop D. unshift方法用于向数组删除第一个元素开头添加unshift最后删除shift 3. 要将页面的状态栏中显示“已经选中该文本框”,下列JavaScript语句正确的是( ) A. window.status=”已经选中该文本框” B. document.status=”已经选中该文本框” C. window.screen=”已经选中该文本框” D. document.screen=”已经选中该文本框” 4. 点击页面的按钮,使之打开一个新窗口,加载一个网页,以下JavaScript代码中可行的是( ) 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向网页中输出<>hello</>,以下代码中可行的是( ) A. <scripttype=”text/javascript”> document.write(<>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> 以下说法中正确的是( ) A. 在页面的第二个文本框中输入内容后,当鼠标离开第二个文本框时,第一个文本框的内容不变 B. 在页面的第一个文本框中输入内容后,当鼠标离开第一个文本框时,将在第二个文本框中复制第一个文本框的内容 C. 在页面的第二个文本框中输入内容后,当鼠标离开第二个文本框时,将在第一个文本框中复制第二个文本框的内容 D. 在页面的第一个文本框中输入内容后,当鼠标离开第一个文本框时,第二个文本框的内容不变 7. 下面的JavaScript语句中,( )实现检索当前页面中的表单元素中的所有文本框,并将它们全部清空 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)中有一个文本框元素(fname),用于输入电话号码,格式如:010-82668155,要求前3位是010,紧接一个“-”,后面是8位数字。要求在提交表单时,根据上述条件验证该文本框中输入内容的有效性,下列语句中,( )能正确实现以上功能 A. var str= form1.fname.value; if(str.substr(0,4)!=”010-”|| str.substr(4).length!=8 || isNaN(parseFloat(str.substr(4)))) isNaN是否是非数值,true是非数值 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位数字的邮编,以下代码正确的是( ) A. var reg = /\d6/; B. var reg = \d{6}\; C. var reg = /\d{6}/; D. var reg = new RegExp(“\d{6}”); 缺少/ / 10. 关于JavaScript里的xml处理,以下说明正确的是( ) A. Xml是种可扩展标记语言,格式更规范,是作为未来html的替代 B. Xml一般用于传输和存储数据,是对html的补充,两者的目的不同 C. 在JavaScript里解析和处理xml数据时,因为浏览器的不同,其做法也不同 D. 在IE浏览器里处理xml,首先需要创建ActiveXObject对象 11.以下哪些是javascript的全局函数:()  A.escape  B.parseFloat  C.eval  //此外还有 unscape parseInt isNaN isFinite D.setTimeout  E.alert  2、以下哪个单词不属于javascript保留字:(B) A. with B. parent C. class D. void  10、关于IE的window对象表述正确的有:(ACD)      A. window.opener属性本身就是指向window对象      B. window.reload()方法可以用来刷新当前页面    //应该是window.location.reload()方法   C. window.location=”a.html”和window.location.href=”a.html”的作用都是把当前页面替换成a.html页面      D. 定义了全局变量g;可以用window.g的方式来存取该变量   二、问答题 1. 列举浏览器对象模型里常用的至少4个对象,并列举window对象的常用方法至少5个 (10分) 对象:Window document location screen history navigator 方法:Alert() confirm() prompt() open() close() 2. 简述列举文档对象模型里document的常用的查找访问节点的方法并做简单说明 (10分) Document.getElementById 根据元素id查找元素 Document.getElementByName 根据元素name查找元素 Document.getElementsTagName 根据指定的元素名查找元素 三、程序题 1、补充按钮事件的函数,确认用户是否退出当前页面,确认之后关闭窗口; (10分) <html> <head> <script type=”text/javascript” > function closeWin(){ //在此处添加代码 if(confirm(“确定要退出吗?”)){ window.close(); } } </script> </head> <body> <input type=”button” value=”关闭窗口”onclick=”closeWin()”/> </body> </html> 2、写出简单描述html标签(不带属性的开始标签和结束标签)的正则表达式,并将以下字符串中的html标签去除掉(15分) var str = “<div>这里是div<p>里面的段落</p></div>”; // <scripttype=”text/javascript”> var str = “<div>这里是div<p>里面的段落</p></div>”; var reg=/<\/? \w+ \/?>/gi; alert(str.repalce(reg,” ”)); </script> 3、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。(10分) <html> <head> <metahttp-equiv=”Content-Type” content=”text/html;charset=utf-8″ /> </head> <body> <script type=”text/javascript” > function foo() { //在此处添加代码 var oradio=document.getElementsByName(“radioGroup”); for(var i=0;i<oraio.length;i++){ if(oradio[i].checked==”true”) alert(“你点击的是第”+(i+1)+”个单选框”); } </script> <body> <form name=”form1″ onsubmit=”fool()”> <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、完成函数showImg(),要求能够动态根据下拉列表的选项变化,更新图片的显示 (15分) <body> <script type=”text/javascript” > function showImg (oSel) { //在此处添加代码 document.getElementById(“pic”).src= oSel.value+”.jpg”; } </script> <img id=”pic” src=”img1.jpg” /> <br /> <select id=”sel” onchange=showImg(this)> <option value=”img1“>城市生活</option> <option value=”img2“>都市早报</option> <option value=”img3“>青山绿水</option> </select></body> 9、form中的input可以设置readonly和disable,请问这两项属性有什么区别? readonly不可编辑,但可以选择和复制 disable不能编辑复制选择 10、JS中的三种弹出式消息提醒(警告窗口、确认窗口、信息输入窗口)的命令是什么? alert confirm prompt 5.列举javaScript的3种主要数据类型,2种复合数据类型和2种特殊数据类型。 主要数据类型:string, boolean, number 复合数据类型:function, object 特殊数据类型:null ,underfined 9.程序中捕获异常的方法? window.error try{}catch(){}finally{} 16.截取字符串abcdefg的efg 'abcdefg'.substring(4) 17.写出函数DateDemo的返回结果,系统时间假定为今天 function DateDemo(){   var d, s="今天日期是:";   d = new Date();   s += d.getMonth() + 1+"/";   s += d.getDate() + "/";   s += d.getYear();   return s; } 结果:今天日期是:7/17/2010 18.写出程序运行的结果? for(i=0, j=0; i<10, j<6; i++, j++){   k = i + j; } 结果:10(小心陷阱)  19.运行的结果? function hi(){ var a; alert(a); } 结果:undefined 14.浏览器的对象模型? window 顶级对象 window.alert(msg) window.prompt() window.confirm() if(window.confirm()){ ... } window.open() window.close() document document.write() history 当用户浏览网页时,浏览器保存了一个最近所访问网页的url列表。这个列表就是用history对象表示。 history.back():后退 history.forward():前进 history.go(n):正数表示向前,负数表示向后 location 表示当前打开的窗口或框架的URL信息。 location.href:重定向 等价于location.assign(url) location.host:类似:80 navigator 表示浏览器的信息及js运行的环境 navigator.cookieEnabled:该属性表示是否启用cookie screen 用于显示网页的显示器的大小和颜色 screen.width/screen.height:表示显示器的分辨率(总的宽度,高度) 21XMLHTTPRequest对象是什么? Ajax原理 22.超链接的属性target的可选值:_blank, _parent, _self, _top和框架名称有什么区别? -blank 在新的页面窗口中打开 –parent在父类页面窗口中打开 –self在当前页面窗口中打开 –top在当前整个浏览器窗口中打开 23.javascript的常用对象有哪些? String, Math, Date和Array对象  四、编程题:  2、填充注释部分的函数体,使得foo()函数调用弹出”成功”的对话框。代码应尽量简短。 function reverse(str) { // 在此处加入代码,完成字符串翻转功能 return str.split(",").reverse().join(","); } <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) { // 在此处加入代码,完成字符串翻转功能 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> <input type="button" value="str" onclick="foo()" /> </body> </html> 1编写一个方法 求一个字符串的字节长度  法1:<script language=”javascript” type=”text/javascript”> new function(s) { if(!arguments.length||!s) return null; if(”"==s) return 0; var l=0; for(var i=0;i<s.length;i++) {    if(s.charCodeAt(i)>255) l+=2;      else l++; } alert(l); } </script> 法2:var str = '22两是'; alert(getStrlen(str)) function getStrlen(str){         var json = {len:0};         var re = /[\u4e00-\u9fa5]/; 、、至少匹配一个汉字的写法         for (var i = 0; i < str.length; i++) {                 if(re.test(str.charAt(i))){ 、、test 方法返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式。                         json['len']++;                 }         };         return json['len']+str.length; }*/     3、用脚本写去除字符串的前后空格  String.prototype.trim = function(mode) {//前后去空格 if (mode==’left’)  {return ((this.charAt(0) == ” “ && this.length > 0) ? this.slice(1).trim(’left’) : this);}  else if (mode == ’right’)  { return ((this.charAt(this.length - 1) == ” “ && this.length > 0) ? this.slice(0, this.length - 1).trim(’right’) : this); }  else  {   return this.trim(’left’).trim(’right’);} };   3,判断一个字符串中出现次数最多的字符,统计这个次数 /*var str = 'asdfssaaasasasasaa'; var json = {}; for (var i = 0; i < str.length; i++) {         if(!json[str.charAt(i)]){                 json[str.charAt(i)] = 1;         }else{                 json[str.charAt(i)]++;         } }; var iMax = 0; var iIndex = ''; for(var i in json){         if(json[i]>iMax){                 iMax = json[i];                 iIndex = i;         } } alert('出现次数最多的是:'+iIndex+'出现'+iMax+'次'); json[1]未定义是假的,之前出现过也就是为假,现在加 非就变成了真 9,编写一个方法 去掉一个数组的重复元素 var arr = [1,2,3,1,43,12,12,1]; var json = {}; var arr2 = []; for (var i = 0; i < arr.length; i++) { // json[1]未定义是假的,之前出现过也就是为假,现在加   if(!json[arr[i]]){ // 因为if里有!,所以json[1]第一次出现就是true,第二次出现结果就是false      json[arr[i]] = true; } else { json[arr[i]] = false;     }         if(json[arr[i]]){                 arr2.push(arr[i]); //最后的arr2结果是1,2,3,43,12,1         } } for (var i = 0; i < arr.length; i++) {         if(!aa(arr[i], arr2)){                 arr2.push(arr[i])         } }; function aa(obj, arr){         for (var i = 0; i < arr.length; i++) {                 if(arr[i] == obj) return true;                 else return false;         }; } alert(arr2);
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服