收藏 分享(赏)

javascript面试题(1).doc

上传人:sjmd695 文档编号:7760731 上传时间:2019-05-25 格式:DOC 页数:46 大小:164.50KB
下载 相关 举报
javascript面试题(1).doc_第1页
第1页 / 共46页
javascript面试题(1).doc_第2页
第2页 / 共46页
javascript面试题(1).doc_第3页
第3页 / 共46页
javascript面试题(1).doc_第4页
第4页 / 共46页
javascript面试题(1).doc_第5页
第5页 / 共46页
点击查看更多>>
资源描述

1、第一题编写一个方法 求一个字符串的字节长度第二题如何控制 alert 中的换行第三题解释 document.getElementById(“ElementID“).style.fontSize=“1.5em“第四题将一个类似图中的效果分离成 css 和 html第五题按照格式 xxxx 年 xx 月 xx 日 xx 时 xx 分 xx 秒动态显示时间 要求不足 10 的补 0第六题编写一个方法 去掉一个数组的重复元素第七题说出 3 条以上 ff 和 ie 的脚本兼容问题第八题按要求写一个简单的 ajax 示例 简单的没意义 就不写了1.new function(s)if(!arguments.

2、length|!s) return null;if(“=s) return 0;var l=0;for(var i=0;i255) l+=2;else l+;alert(l);(“hello 你好,我好,大家好!world!“);2.alert(“hellonworld“);3.em 是个相对单位。5.new function()with(new Date()var t=function(a)return a6.Array.prototype.strip=function()if(this.length8.loading数据正在加载var Browser=/*Browser 对象用于检测浏览器

3、,其中用到了 IE 的条件编译*/*cc_onisIE:true,*/isFF:window.navigator.appName.toUpperCase().indexOf(“NETSCAPE“)!=-1?true:false,isOpera:window.navigator.appName.toUpperCase().indexOf(“OPERA“)!=-1?true:false;Function.prototype.bind=function(object)var _this=this;return function()_this.apply(object,arguments);funct

4、ion HttpRequest()this.async=true;this.cache=false;this.xmlhttp=function()if(Browser.isFFcatch(e)else if(Browser.isIEfor(var i=0;i/img).join(“););javascript 面试题汇总1、form 中的 input 有哪些类型?各是做什么处理使用的? text radio checkbox file button image submit reset hidden submit 是 button 的一个特例,也是 button 的一种,它把提交这个动作自动集

5、成了。 如果表单在点击提交按钮后需要用 JS 进行处理(包括输入验证)后再提交的话,通常都必须把 submit 改成button, 即取消其自动提交的行为,否则,将会造成提交两次的效果,对于动态网页来说,也就是对数据库操作两次。 button 具有 name、value 属性,能触发 onclick 事件 submit 继承了 button submit 增加了触发表单 onsubmit 事件的功能、增加了执行表单的 submit()方法的功能INPUT type=submit 按回车提交表单 button 提交的是 innerTEXT2、table 标签中 border,cellpaddin

6、g td 标签中 colspan,rowspan 分别起什么作用? border 边界 cellpadding 边距 cellpadding,是补白,是指单元格内文字与边框的距离 cellspacing,两个单元格之间的距离 colspan 跨列数 rowspan 跨行数 3、form 中的 input 可以设置 readonly 和 disable,请问这两项属性有什么区别? readonly 不可编辑,但可以选择和复制 disable 不能编辑复制选择 4、JS 中的三种弹出式消息提醒(警告窗口、确认窗口、信息输入窗口)的命令是什么? alert confirm prompt5.题目:当点

7、击按钮时,如何实现两个 td 的值互换?用 javascript 实现此功能。分析:这个题主要是考变量传值。其次是考如何取元素的值。第一种代码如下:Code12345无标题文档67/29303132333435363738第二种代码如下:Code12345无标题文档67/293031323334 35 32144536 37 38 39 12313340 41 42434445 在一般编程语言中, 参数都是“传值“, 假设一个 C 函数的原型是 int Fun(int value); 当你调用这个函数时, Fun 函数首先会在自己的函数栈上 copy 一份参数, 就是这个函数的副本, 当你在

8、Fun 外部修改 value 值, 并不会影响 Fun 内部的 value. 而 Javascript 的内嵌函数很特殊, 它并不会 copy 一个参数副本, 所有函数公用一套参数, 所以你在函数外部修改了参数值, 函数内部也会受影响. 这就是为什么你的 show 函数, 它的 z 参数是最后一个值, 因为每一次循环, z 都被更改了. 传值和传址的问题javascript 面试题 滤镜 filter:alpha(opacity=80, finishOpacity=0, style=1, startX=70);2008-09-19 19:51题 1.给 Array 原型添加一个方法,这个方法接

9、受一个参数,如果这个参数在数组中存在那么就把它从数组中删除。 题 2.对下面这个对象进行克隆. var student = name:“zhang3“, sno:“20080328“, age:“20“, call:function()alert(this.name+this.sno+this.age); ; 题 3.写一个简单 form 表单,当光标离开表单的时候把表单的值发送给后台(使用 AJAX)。类似于 163 邮箱(http:/ Array.prototype.a=function(x)for(var i=0;inameaddressvar a=document.getElement

10、ById(“a“)var b=document.getElementById(“b“)function a()var DataToSend = “name=“ + a.value + “var xmlhttp = new ActiveXObject(“Microsoft.XMLHTTP“);xmlhttp.open(“POST“, “Receiver.asp“, true);xmlhttp.setRequestHeader(“Content-Type“, “application/x-www-form-urlencoded“);xmlhttp.send(DataToSend);Alpha 滤镜

11、 /CSS 例 .menu background:#3399ff;width:100;height:300; filter:alpha(opacity=80, finishOpacity=0, style=1, startX=70); 语法:FILTER:ALPHA(opacity=opacity,finishopacity=finishopacity,style=style,startx=startx, starty=starty,finishx=finishx,finishy=finishy) “Alpha“属性是把一个目标元素与背景混合。设计者可以指定数值来控制混合的程度。 这种“与背景

12、混合”通俗地说就是一个元素的透明度。通过指定坐标,可以指定点、线、 面的透明度。他们的参数含义分别如下: “opacity“代表透明度水准。默认的范围是从 0 到 100,他们其实是百分比的形式。 也就是说,0 代表完全透明,100 代表完全不透明。”finishopacity“是一个可选参数, 如果想要设置渐变的透明效果,就可以使用他们来指定结束时的透明度。范围也是 0 到 100。 “style“ 参数指定了透明区域的形状特征。其中 0 代表统一形状、1 代表线形、2 代表放射状、 3 代表长方形。”STARTX“和”STARTY“代表渐变透明效果的开始 X 和 Y 坐标。”FINISHX

13、“和” FINISHY“代表渐变透明效果结束 X 和 Y 的坐标。enabled Enabled 设置或检索滤镜是否激活。 style Style 设置或检索透明渐变的样式。 opacity Opacity 设置或检索透明渐变的开始透明度。 finishOpacity FinishOpacity 设置或检索透明渐变的结束透明度。 startX StartX 设置或检索透明渐变开始点的水平坐标。 startY StartY 设置或检索透明渐变开始点的垂直坐标。 finishX FinishX 设置或检索透明渐变结束点的水平坐标。 finishY FinishY 设置或检索透明渐变结束点的垂直坐标

14、。 javascript 试题2008-06-11 16:24一、单选题 1、以下哪条语句会产生运行错误:(A) A.var obj = ( ); B.var obj = ; C.var obj = ; D.var obj = / /; 2、以下哪个单词不属于 javascript 保留字:(B) A. with B. parent C. class D. void 3、请选择结果为真的表达式:(C) A. null instanceof Object B. null = undefined C. null = undefined D. NaN = NaN 二、不定项选择题 4、请选择对 ja

15、vascript 理解有误的:(ABCD) A. JScript 是 javascript 的简称 B. javascript 是网景公司开发的一种 Java 脚本语言,其目的是为了简化 Java 的开发难度 C. FireFox 和 IE 存在大量兼容性问题的主要原因在于他们对 javascript 的支持不同上 D. AJAX 技术一定要使用 javascript 技术 5、 foo 对象有 att 属性,那么获取 att 属性的值,以下哪些做法是可以的:(ACE) A. foo.att B. foo(“att”) C. foo“att” D. foo“att” E. foo“a”+”t”

16、+”t” 6、在不指定特殊属性的情况下,哪几种 HTML 标签可以手动输入文本:(AB) A. B. C. D. 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、关于表格

17、表述正确的有:(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 页

18、面 D. 定义了全局变量 g;可以用 window.g 的方式来存取该变量 三、问答题: 1、谈谈 javascript 数组排序方法 sort()的使用,重点介绍 sort()参数的使用及其内部机制 sort 的实现的功能类似 JAVA 的比较器,数据排序从多维数组的第一维开始排序 可以自己定义排序方法,很不多的函数 2、简述 DIV 元素和 SPAN 元素的区别。 DIV 有回车,SPAN 没有3、结合text这段结构,谈谈 innerHTML outerHTML innerText 之间的区别。 这个问题只要写一下看的很清楚 innerHTML 对象里面的 HTML,outerHTML

19、包括对象和里面的 innerText 对象里面的文本 4、说几条 XHTML 规范的内容(至少 3 条) 属性加引号,不能有不匹配的标签,加定义 5、对 Web 标准化(或网站重构)知道哪些相关的知识,简述几条你知道的 Web 标准? W3C 标准等 四、程序题: 1、完成 foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。 function foo() / 在此处添加代码 var rg = document.getElementsByName(“radioGroup“); for( var i = 0; i 2、填充注释部分的函数体,使得 foo()函数调用弹出”成功”的

20、对话框。代码应尽量简短。 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+=spli+,; newstr=newstr.substring(0,newstr.length-1) return n

21、ewstr; function reverse(str) / 在此处加入代码,完成字符串翻转功能 return str.split(“,“).reverse().join(“,“); javascript 面试题1如何获取表单域的选择部分的文本?2在 JavaScript 中定时调用函数 foo() 如何写?3var a = 10; var b = 20; var c = 10; alert(a = b); alert(a = b); alert(a = c);结果是?以下是答案:1、123function _sel(obj)alert(“显示文本:“ + obj.optionsobj.sel

22、ectedIndex.text);alert(“值:“ + obj.optionsobj.selectedIndex.value);2、function foo()alert(“aaaa“);a = setTimeout(foo(),100);foo();3、a = b 是赋值,a = b 是判断值是否相同 lect域的选择部分的文本?2在 JavaScript 中定时调用函数 foo() 如何写?3var a = 10; var b = 20; var c = 10; alert(a = b); alert(a = b); alert(a = c);结果是?以下是答案:1、123functi

23、on _sel(obj)alert(“显示文本:“ + obj.optionsobj.selectedIndex.text);alert(“值:“ + obj.optionsobj.selectedIndex.value);2、function foo()alert(“aaaa“);a = setTimeout(foo(),100);foo();3、a = b 是赋值,a = b 是判断值是否相同百度 JavaScript 笔试题2009 年 01 月 20 日 星期二 09:22第一题编写一个方法 求一个字符串的字节长度第二题如何控制 alert 中的换行第三题解释 document.get

24、ElementById(“ElementID“).style.fontSize=“1.5em“第四题将一个类似图中的效果分离成 css 和 html第五题按照格式 xxxx 年 xx 月 xx 日 xx 时 xx 分 xx 秒动态显示时间 要求不足 10 的补 0第六题编写一个方法 去掉一个数组的重复元素第七题说出 3 条以上 ff 和 ie 的脚本兼容问题第八题按要求写一个简单的 ajax 示例 简单的没意义 就不写了第一题代码:new function(s)if(!arguments.length|!s) return null;if(“=s) return 0;var l=0;for(v

25、ar i=0;i255) l+=2;else l+;alert(l);(“你“);第二题:alert 中的换行用nalert(“hellonworld“);第三题:em 是个相对单位。第四题我就不做了。第五题代码new function()with(new Date()var t=function(a)return a第六题代码:Array.prototype.strip=function()if(this.length第七题:同意 winter 的,另:IE 有 children,FF 没有;IE 有 parentElement,FF 没有;IE 有innerText,outerText,o

26、uterHTML,FF 没有;FF 有HTMLElement,HTMLDivElement,XMLDocument,DocumentFragment,Node,Event,Element 等等,IE 没有;IE 有数据岛,FF 没有;IE 跟 FF 创建 HttpRequest 实例的方法不一样。等等。第八题代码:loading数据正在加载var Browser=/*Browser 对象用于检测浏览器,其中用到了 IE 的条件编译*/*cc_onisIE:true,*/isFF:window.navigator.appName.toUpperCase().indexOf(“NETSCAPE“)

27、!=-1?true:false,isOpera:window.navigator.appName.toUpperCase().indexOf(“OPERA“)!=-1?true:false;Function.prototype.bind=function(object)var _this=this;return function()_this.apply(object,arguments);function HttpRequest()this.async=true;this.cache=false;this.xmlhttp=function()if(Browser.isFFcatch(e)el

28、se if(Browser.isIEfor(var i=0;i/img).join(“););汇总 Javascript 各种判断脚本(javascript 经典例子)2009-04-17 14:08验证类 1、数字验证内 1.1 整数 1.2 大于 0 的整数 (用于传来的 ID 的验证) 1.3 负整数的验证 1.4 整数不能大于 iMax 1.5 整数不能小于 iMin 2、时间类 2.1 短时间,形如 (13:04:06) 2.2 短日期,形如 (2003-12-05) 2.3 长时间,形如 (2003-12-05 13:04:06) 2.4 只有年和月。形如(2003-05,或者 2

29、003-5) 2.5 只有小时和分钟,形如(12:03) 3、表单类 3.1 所有的表单的值都不能为空 3.2 多行文本框的值不能为空。 3.3 多行文本框的值不能超过 sMaxStrleng 3.4 多行文本框的值不能少于 sMixStrleng 3.5 判断单选框是否选择。 3.6 判断复选框是否选择. 3.7 复选框的全选,多选,全不选,反选 3.8 文件上传过程中判断文件类型 4、字符类 4.1 判断字符全部由 a-Z 或者是 A-Z 的字字母组成 4.2 判断字符由字母和数字组成。 4.3 判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母 4.4 字符串替换函数.R

30、eplace(); 5、浏览器类 5.1 判断浏览器的类型 5.2 判断 ie 的版本 5.3 判断客户端的分辨率 6、结合类 6.1 email 的判断。 6.2 手机号码的验证 6.3 身份证的验证 二、功能类 1、时间与相关控件类 1.1 日历 1.2 时间控件 1.3 万年历 1.4 显示动态显示时钟效果(文本,如 OA 中时间) 1.5 显示动态显示时钟效果 (图像,像手表) 2、表单类 2.1 自动生成表单 2.2 动态添加,修改,删除下拉框中的元素 2.3 可以输入内容的下拉框 2.4 多行文本框中只能输入 iMax 文字。如果多输入了,自动减少到 iMax 个文字(多用于短信发

31、送) 3、打印类 3.1 打印控件 4、事件类 4.1 屏蔽右键 4.2 屏蔽所有功能键 4.3 和24 | a360 | a460) alert(“时间格式不对“); return false return true; 2.2 短日期,形如 (2003-12-05) function strDateTime(str) var r = str.match(/(d1,4)(-|/)(d1,2)2(d1,2)$/); if(r=null)return false; var d= new Date(r1, r3-1, r4); return (d.getFullYear()=r1 2.3 长时间,形

32、如 (2003-12-05 13:04:06) function strDateTime(str) var reg = /(d1,4)(-|/)(d1,2)2(d1,2) (d1,2)d1,2)d1,2)$/; var r = str.match(reg); if(r=null)return false; var d= new Date(r1, r3-1,r4,r5,r6,r7); return (d.getFullYear()=r1 2.4 只有年和月。形如(2003-05,或者 2003-5) 2.5 只有小时和分钟,形如(12:03) 3、表单类 3.1 所有的表单的值都不能为空 3.2

33、 多行文本框的值不能为空。 3.3 多行文本框的值不能超过 sMaxStrleng 3.4 多行文本框的值不能少于 sMixStrleng 3.5 判断单选框是否选择。 3.6 判断复选框是否选择. 3.7 复选框的全选,多选,全不选,反选 3.8 文件上传过程中判断文件类型 4、字符类 4.1 判断字符全部由 a-Z 或者是 A-Z 的字字母组成 4.2 判断字符由字母和数字组成。 4.3 判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母 /(a-zA-z_1)(w*)$/g.test(str) 4.4 字符串替换函数.Replace(); 5、浏览器类 5.1 判断浏览器

34、的类型 window.navigator.appName 5.2 判断 ie 的版本 window.navigator.appVersion 5.3 判断客户端的分辨率 window.screen.height; window.screen.width; 6、结合类 6.1 email 的判断。 function ismail(mail) return(new RegExp(/w+(-w+)|(.w+)*-AT-A-Za-z0-9+(.|-)A-Za-z0-9+)*.A-Za-z0-9+$/).test(mail); 6.2 手机号码的验证 6.3 身份证的验证 function isIdCa

35、rdNo(num) if (isNaN(num) alert(“输入的不是数字!“); return false; var len = num.length, re; if (len = 15) re = new RegExp(/(d6)()?(d2)(d2)(d2)(d3)$/); else if (len = 18) re = new RegExp(/(d6)()?(d4)(d2)(d2)(d3)(d)$/); else alert(“输入的数字位数不对!“); return false; var a = num.match(re); if (a != null) if (len=15)

36、var D = new Date(“19“+a3+“/“+a4+“/“+a5); var B = D.getYear()=a3 else var D = new Date(a3+“/“+a4+“/“+a5); var B = D.getFullYear()=a3 if (!B) alert(“输入的身份证号 “+ a0 +“ 里出生日期不对!“); return false; return true; - 3.7 复选框的全选,多选,全不选,反选 全选 全选 function checkAll(str) var a = document.getElementsByName(str); var

37、n = a.length; for (var i=0; iai.checked = window.event.srcElement.checked; function checkItem(str) var e = window.event.srcElement; var all = eval(“document.hrong.“+ str); if (e.checked) var a = document.getElementsByName(e.name); all.checked = true; for (var i=0; i if (!ai.checked) all.checked = fa

38、lse; break; else all.checked = false; 3.8 文件上传过程中判断文件类型 - 身份证严格验证: 验证地址 function isip(s) var check=function(v)tryreturn (v=0)catch(x)return false; var re=s.split(“.“) return (re.length=4)?(check(re0) alert(isip(s) 加 sp1 后还能用的无边框窗口! /*- Special Thanks For andot -*/ /* This following code are designed

39、 and writen by Windy_sk You can use it freely, but u must held all the copyright items! / /- Thanks For andot Again -*/ var CW_width = 400; var CW_height = 300; var CW_top = 100; var CW_left = 100; var CW_url = “/“; var New_CW = window.createPopup(); var CW_Body = New_CW.document.body; var content =

40、 “; var CSStext = “margin:1px;color:black; border:2px outset;border-style:expression(onmouseout=onmouseup=function()this.style.borderStyle=outset, onmousedown=function()if(event.button!=2)this.style.borderStyle=inset);background-color:buttonface;width:16px;height:14px;font-size:12px;line-height:11px

41、;cursor:Default;“; /Build Window include.startDownload(CW_url, function(source)content=source); function insert_content() var temp = “; CW_Body.style.overflow = “hidden“; CW_Body.style.backgroundColor = “white“; CW_Body.style.border = “solid black 1px“; content = content.replace(/*)/g,“); temp += “;

42、 temp += “; temp += “Chromeless Window For IE6 SP1“; temp += “; temp += “?“; temp += “0“; temp += “1“; temp += “x“; temp += “; temp += “; temp += content; temp += “ “; temp += “; CW_Body.innerHTML = temp; setTimeout(“insert_content()“,1000); var if_max = true; function show_CW() window.moveTo(10000,

43、 10000); if(if_max) New_CW.show(CW_top, CW_left, CW_width, CW_height); if(typeof(New_CW.document.all.include)!=“#ff0000“) New_CW.document.all.include.style.width = CW_width; New_CW.document.all.Max.innerText = “1“; else New_CW.show(0, 0, screen.width, screen.height); New_CW.document.all.include.styl

44、e.width = screen.width; window.onfocus = show_CW; window.onresize = show_CW; / Move Window var drag_x,drag_y,draging=false function drag_move(e) if (draging) New_CW.show(e.screenX-drag_x, e.screenY-drag_y, CW_width, CW_height); return false; function drag_down(e) if(e.button=2)return; if(New_CW.docu

45、ment.body.offsetWidth=screen.width drag_x=e.clientX; drag_y=e.clientY; draging=true; e.srcElement.setCapture(); function drag_up(e) draging=false; e.srcElement.releaseCapture(); if(New_CW.document.body.offsetWidth=screen.width CW_top = e.screenX-drag_x; CW_left = e.screenY-drag_y; 电话号码的验证 要求: (1)电话号

46、码由数字、“(“、“)“和“-“构成 (2)电话号码为 3 到 8 位 (3)如果电话号码中包含有区号,那么区号为三位或四位 (4)区号用“(“、“)“或“-“和其他部分隔开 (5)移动电话号码为 11 或 12 位,如果为 12 位,那么第一位为 0 (6)11 位移动电话号码的第一位和第二位为“13“ (7)12 位移动电话号码的第二位和第三位为“13“ 根据这几条规则,可以与出以下正则表达式: (0-93,4-0-93,8$)|(0-93,8$)|(0-93,4)0-93,8$)|(00,1130-99$) function PhoneCheck(s) var str=s; var reg=/(0-93,4-0-93,8$)|(0-93,8$)|(0-93,4)0-93,8$)|(00,1130-99$)/ alert(reg.test(str); - - /检验法人代码 function isCorporationCode(s) var patrn=/(d)15$/; if (!patrn.exec

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报