您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > JavaScript面试题汇总
一、单选题1、以下哪条语句会产生运行错误:(A)A.varobj=();B.varobj=[];//定义一个数组C.varobj={};//定义一个对象D.varobj=//;//定义一个正则表达式2、以下哪个单词不属于javascript保留字:(B)A.withB.parentC.classD.void3、请选择结果为真的表达式:(C)A.nullinstanceofObjectB.null===undefinedC.null==undefinedD.NaN==NaN说明:==用于一般比较,===用于严格比较,==在比较的时候可以转换数据类型,===严格比较,只要类型不匹配就返回flase。举例说明:1==true类型不同,==将先做类型转换,把true转换为1,即为1==1;此时,类型仍不同,继续进行类型转换,把1转换为1,即为1==1;此时,==左右两边的类型都为数值型,比较成功!如果比较:1===true左侧为字符型,右侧为bool布尔型,左右两侧类型不同,结果为false;如果比较:1===1左侧为字符型,右侧为int数值型,左右两侧类型不同,结果为false;如果比较:1===1左侧为int数值型,右侧为int数值型,左右两侧类型相同,数值大小也相同,结果为true;如果比较:1===2左侧为int数值型,右侧为int数值型,左右两侧类型相同,但数值大小不同,结果为false;简而言之就是==只要求值相等;===要求值和类型都相等二、不定项选择题4、请选择对javascript理解有误的:(ABCD)A.JScript是javascript的简称、B.javascript是网景公司开发的一种Java脚本语言,其目的是为了简化Java的开发难度(没有什么关系)。C.FireFox和IE存在大量兼容性问题的主要原因在于他们对javascript的支持不同上D.AJAX技术一定要使用javascript技术说明:Java、javascript、JS和JScript首先,这三者没有必然的联系,它们是完全不同的事物,它们是分别由不同公司开发的,在函数方面有相同的地方,也有很多不同之处。Java是由Sun公司创立、开发;javascript则是Sun和Netscape公司共同开发的产品;JScript是微软对ECMA262语言规范的一种实现。这三者的共同点是,语法与C语言相似。JS是javascript的简称。JScript应用于ASP,运行于服务器端。而Java、javascript都是运行于客户端。Sun公司后来又推出了JSP,以Java语言为基础,运行于服务器端。运行于服务器端的网页是动态网页,所以以JScript为基础的ASP、以Java为基础的JSP是动态网页,而Java、javascript则是静态网页。ajax是一种概念,它是几种技术的综合运用(javascript,xml),ajax可以用在任何动态语言开发的网站里(asp,asp.net,jsp,php等)。它不为微软专有,不过呢,微软为asp.net专门开发了一个ajax框架。5、foo对象有att属性,那么获取att属性的值,以下哪些做法是可以的:(ACE)A.foo.attB.foo(“att”)C.foo[“att”]D.foo{“att”}E.foo[“a”+”t”+”t”]6、以下哪些是javascript的全局函数:(ABC)A.escapeB.parseFloatC.evalD.setTimeoutE.alert说明:全局属性和函数可用于所有内建的JavaScript对象。顶层函数(全局函数)FF:Firefox,IE:InternetExplorer函数描述FFIEdecodeURI()解码某个编码的URI。15.5decodeURIComponent()解码一个编码的URI组件。15.5encodeURI()把字符串编码为URI。15.5encodeURIComponent()把字符串编码为URI组件。15.5escape()对字符串进行编码。13eval()计算JavaScript字符串,并把它作为脚本代码来执行。13getClass()返回一个JavaObject的JavaClass。isFinite()检查某个值是否为有穷大的数。14isNaN()检查某个值是否是数字。13Number()把对象的值转换为数字。1parseFloat()解析一个字符串并返回一个浮点数。13parseInt()解析一个字符串并返回一个整数。13String()把对象的值转换为字符串。1unescape()对由escape()编码的字符串进行解码。13顶层属性(全局属性)FF:Firefox,IE:InternetExplorer方法描述FFIEInfinity代表正的无穷大的数值。14java代表java.*包层级的一个JavaPackage。NaN指示某个值是不是数字值。14Packages根JavaPackage对象。undefined指示未定义的值。15.57、关于IFrame表述正确的有:(ABCD)A.通过IFrame,网页可以嵌入其他网页内容,并可以动态更改B.在相同域名下,内嵌的IFrame可以获取外层网页的对象C.在相同域名下,外层网页脚本可以获取IFrame网页内的对象D.可以通过脚本调整IFrame的大小8、关于表格表述正确的有:(ABCDE)A.表格中可以包含TBODY元素B.表格中可以包含CAPTION元素C.表格中可以包含多个TBODY元素D.表格中可以包含COLGROUP元素E.表格中可以包含COL元素表格标签表格描述table定义表格caption定义表格标题。th定义表格的表头。tr定义表格的行。td定义表格单元。thead定义表格的页眉。tbody定义表格的主体。tfoot定义表格的页脚。col定义用于表格列的属性。colgroup定义表格列的组。9、关于IE的window对象表述正确的有:(ACD)A.window.opener属性本身就是指向window对象B.window.reload()方法可以用来刷新当前页面C.window.location=”a.html”和window.location.href=”a.html”的作用都是把当前页面替换成a.html页面D.定义了全局变量g;可以用window.g的方式来存取该变量三、问答题:1、谈谈javascript数组排序方法sort()的使用,重点介绍sort()参数的使用及其内部机制sort的实现的功能类似JAVA的比较器,数据排序从多维数组的第一维开始排序可以自己定义排序方法,很不多的函数语法:arrayObject.sort(sortby)参数sortby:可选,规定排序顺序。必须是函数。返回对数组的引用。注意,数组在原数组上进行排序,不生成副本。如果该方法没有使用参数,将按照字符编码的顺序进行排序。如果想要按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数a和b,其返回值如下:1)若a小于b,在排序后的数组中a应该出现在b之前,返回一个小于0的值。2)若a等于b,返回0。3)若a大于b,则返回一个小于0的值。2、简述DIV元素和SPAN元素的区别。div是块元素,默认换行,一般用于排版。span是行内元素,默认不换行,一般用于局部文字样式。通过display属性他们之间可以相互转换,div默认为block,span默认为inline。3、结合spanid=outerspanid=innertext/span/span这段结构,谈谈innerHTMLouterHTMLinnerText之间的区别。innerHTML:对象里面的HTML内容,这里是spanid=innertext/spanouterHTML:对象里面包括对象本身的HTML内容,这里是spanid=outerspanid=innertext/span/spaninnerText:对象里面的文本内容,这里是text4、说几条XHTML规范的内容(至少3条)属性加引号,不能有不匹配的标签,加定义1)标签名必须用小写字母。2)所有标签都必须被关闭,包括空标签。3)属性值必须加引号。4)用Id属性代替name属性。5)所有XHTML文档必须进行文件类型声明。5、对Web标准化(或网站重构)知道哪些相关的知识,简述几条你知道的Web标准?网页主要由三部分组成:结构(Structure)、表现(Presentation)和行为(Behavior)。对应的网站标准也分三方面:结构化标准语言,主要包括XHTML和XML;表现标准语言主要包括CSS;行为标准主要包括对象模型(如W3CDOM)、ECMAScript等。为什么要使用web标准?1)具有更好的兼容性。2)易于代码维护和开发。3)可增加网站的访问量。4)标准的web文档更易被转换为其他格式。5)更易被搜索引擎访问,也更易被准确索引。6)更易被JavaScript和DOM代码访问。W3C标准:HTML、XHTML、CSS、XML、XSL、DOM。6、vara=10;varb=20;varc=10;alert(a=b);alert(a==b);alert(a==c);结果是?结果:20,true.false;7、form中的input有哪些类型?各是做什么处理使用的?textradiocheckboxfilebuttonimagesubmitresethiddensubmit是button的一个特例,也是button的一种,它把提交这个动作自动集成了。如果表单在点击提交按钮后需要用JS进行处理(包括输入验证)后再提交的话,通常都必须把submit改成button,即取消其自动提交的行为,否则,将会造成提交两次的效果,对于动态网页来说,也就是对数据库操作两次。button具有name、value属性,能触发onclick事件submit继承了buttonsubmit增加了触发表单onsubmit事件的功能、增加了执行表单的submit()方法的功能INPUTtype=submit按回车提交表单button提交的是innerTEXT8、table标签中border,cellpaddingtd标签中colspan,rowspan分别起什么作用?border边界cellpadding,是补白,是指单元格内文字与边框的距离cellspacing,两个单元格之间的距离colspan跨列数rowspan跨行数9、form中的input可以设置readonly和disable,请问这两项属性有什么区别?readonly不可编辑,但可以选择和复制disable不能编辑复制选择10、JS中的三种弹出式消息提醒(警告窗口、确认窗口、信息输入窗口)的命令是什么?alertconfirmprompt四、编程题:1、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。Html代码1.html2.head3.script4.functionfoo()5.{6.//在此处添加代码7.varrg=document.getElementsByName(radioGroup);8.for(vari=0;irg.length;i++)9.{10.if(rg[i].checked)11.{12.alert(你选择了第+(i+1)+个单选框);13.}14.}15.returnfalse;16.}17./script18./head19.body20.formname=form1onsubmit=foo();21.inputtype=radioname=radioGroup/22.inputtype=radioname=radioGroup/23.inputty
本文标题:JavaScript面试题汇总
链接地址:https://www.777doc.com/doc-2878434 .html