《Web前端开发笔试题集锦》由会员分享,可在线阅读,更多相关《Web前端开发笔试题集锦(4页珍藏版)》请在金锄头文库上搜索。
1、笔试问答 Web前端开发笔试题集锦 以下为Web前端开发笔试题集锦之Javascript篇,移步HTML/CSS篇1, 判断字符串是否是这样组成的,第一个必须是字母,后面可以是字母、数字、下划线,总长度为5-20var reg = /a-zA-Za-zA-Z_0-94,19$/;reg.test(a1a_a1a_a1a_a1a_);2,截取字符串abcdefg的efgvar str = abcdefg;if (/efg/.test(str) var efg = str.substr(str.indexOf(efg), 3);alert(efg);3,判断一个字符串中出现次数最多的字符,统计这个
2、次数/将字符串的字符保存在一个hash table中,key是字符,value是这个字符出现的次数var str = abcdefgaddda;var obj = ;for (var i = 0, l = str.length; i l; i+) var key = str;if (!objkey) objkey = 1; else objkey+;/*遍历这个hash table,获取value最大的key和value*/var max = -1;var max_key = ;var key;for (key in obj) if (max objkey) max = objkey;max_
3、key = key;alert(max:+max+ max_key:+max_key);4,IE与FF脚本兼容性问题(1) window.event:表示当前的事件对象,IE有这个对象,FF没有,FF通过给事件处理函数传递事件对象(2) 获取事件源IE用srcElement获取事件源,而FF用target获取事件源(3) 添加,去除事件IE:element.attachEvent(“onclick”, function) element.detachEvent(“onclick”, function)FF:element.addEventListener(“click”, function,
4、true) element.removeEventListener(“click”, function, true)(4) 获取标签的自定义属性IE:div1.value或div1“value”FF:可用div1.getAttribute(“value”“hello world”;(2)Var str2 = new String(“hello world”);function IsString(str)return (typeof str = string | str.constructor = String);var str = ;alert(IsString(1);alert(IsStri
5、ng(str);alert(IsString(new String(str);14,网页中实现一个计算当年还剩多少时间的倒数计时程序,要求网页上实时动态显示“年还剩天时分秒”“pnp”);20,请实现,鼠标点击页面中的任意标签,alert该标签的名称.(注意兼容性)SPANDIVSPANP21,请编写一个JavaScript函数 parseQueryString,它的用途是把URL参数解析为一个对象,如:var url = “http:/ /*在css中定义,形式如下:.* (3) 使用DOM2的添加事件的方法 addEventListener或attachEvent28,documen.wr
6、ite和 innerHTML的区别document.write只能重绘整个页面innerHTML可以重绘页面的一部分29,多浏览器检测通过什么?(1) navigator.userAgent(2) 不同浏览器的特性,如addEventListener30,js的基础对象有那些, window和document的常用的方法和属性列出来String,Number,BooleanWindow:方法:setInterval,setTimeout,clearInterval,clearTimeout,alert,confirm,open属性:name,parent,screenLeft,screenTo
7、p,self,top,statusDocument方法:createElement,execCommand,getElementById,getElementsByName,getElementByTagName,write,writeln属性:cookie,doctype,domain,documentElement,readyState,URL,31,前端开发的优化问题(1) 减少http请求次数:css spirit,data uri(2) JS,CSS源码压缩(3) 前端模板 JS+数据,减少由于HTML标签导致的带宽浪费,前端用变量保存AJAX请求结果,每次操作本地变量,不用请求,减
8、少请求次数(4) 用innerHTML代替DOM操作,减少DOM操作次数,优化javascript性能(5) 用setTimeout来避免页面失去响应(6) 用hash-table来优化查找(7) 当需要设置的样式很多时设置className而不是直接操作style(8) 少用全局变量(9) 缓存DOM节点查找的结果(10) 避免使用CSS Expression(11) 图片预载(12) 避免在页面的主体布局中使用table,table要等其中的内容完全下载之后才会显示出来,显示比div+css布局慢32,如何控制网页在网络传输过程中的数据量启用GZIP压缩保持良好的编程习惯,避免重复的CSS
9、,JavaScript代码,多余的HTML标签和属性33,Flash、Ajax各自的优缺点,在使用中如何取舍?Ajax的优势(1) 可搜索型(2) 开放性(3) 费用(4) 易用性(5) 易于开发Flash的优势(1) 多媒体处理(2) 兼容性(3) 矢量图形 比SVG,Canvas优势大很多(4) 客户端资源调度,比如麦克风,摄像头笔试问答 软件开发阶段笔试题 软件开发的阶段,软件测试的阶段,以及每个阶段的任务;RAD(rap application development),就是软件开发过程中的一个重要模型,称为快速应用开发模型。其模型构图形似字母V,所以又称V模型。他通过开发和测试同时进
10、行的方式来缩短开发周期,提高开发效率。V模型大体可以划分为下面几个不同的阶段步骤,既需求分析、概要设计、祥细设计、编码、单元测试、集成测试、系统测试、验收测试。需求分析:明确客户需要,按需求写出规格文档说明书;概要设计:构建框架,描述模块功能及接口;祥细设计:设计模块的具体实现方式及模块的组合方式(把程序的具体实现的功能,现象等描述出来);编码:按照祥细设计好的模块功能表,编写出实际的代码;单元测试(模块测试):按照设定好的最小测试单元进行按单元测试,主要是测试程序代码;集成测试(也叫组装测试,联合测试):集成测试是在软件系统集成过程中所进行的测试,其主要目的是检查软件单位之间的接口是否正确;系统测试:是对已经集成好的软件系统进行彻底的测试,以验证软件系统的正确性和性能等满足其指定的要求;验收测试:验收测试的目的是确保软件准备就绪,并且可以让最终用户将其用于执行软件的既定功能和任务。