前端面试题汇总
一、HTML 和CSS...............................................................................................................................19
1、你做的页面在哪些流览器测试过?这些浏览器的内核分别是什么?..........................19
2、每个HTML 文件里开头都有个很重要的东西,Doctype,知道这是干什么的吗?....19
3、Quirks 模式是什么?它和Standards 模式有什么区别............................................... 19
4、div css 的布局较table 布局有什么优点?................................................................. 20
5、img 的alt 与title 有何异同? strong 与em 的异同?.......................................... 20
6、你能描述一下渐进增强和优雅降级之间的不同吗?...................................................... 20
7、为什么利用多个域名来存储网站资源会更有效?........................................................ 21
8、请谈一下你对网页标准和标准制定机构重要性的理解。............................................ 21
9、请描述一下cookies,sessionStorage 和localStorage 的区别?..........................21
10、简述一下src 与href 的区别。.....................................................................................22
11、知道的网页制作会用到的图片格式有哪些?.............................................................. 22
12、知道什么是微格式吗?谈谈理解。在前端构建中应该考虑微格式吗?..................23
13、在css/js 代码上线之后开发人员经常会优化性能,从用户刷新网页开始,一次js
请求一般情况下有哪些地方会有缓存处理?...................................................................... 23
14、一个页面上有大量的图片(大型电商网站),加载很慢,你有哪些方法优化这些图
片的加载,给用户更好的体验。...........................................................................................23
15、你如何理解HTML 结构的语义化?................................................................................ 23
16、谈谈以前端角度出发做好SEO 需要考虑什么?.......................................................... 24
17、有哪项方式可以对一个DOM 设置它的CSS 样式?...................................................... 26
18、CSS 都有哪些选择器?....................................................................................................26
19、CSS 中可以通过哪些属性定义,使得一个DOM 元素不显示在浏览器可视范围内?27
20、超链接访问过后hover 样式就不出现的问题是什么?如何解决?..........................27
21、什么是Css Hack?ie6,7,8 的hack 分别是什么?.................................................... 27
22、请用Css 写一个简单的幻灯片效果页面...................................................................... 28
24、行内元素和块级元素的具体区别是什么?行内元素的padding 和margin 可设置吗?
................................................................................................................................................... 29
25、什么是外边距重叠?重叠的结果是什么?.................................................................. 29
26、rgba()和opacity 的透明效果有什么不同?.............................................................. 29
27、css 中可以让文字在垂直和水平方向上重叠的两个属性是什么?........................... 30
28、如何垂直居中一个浮动元素?.......................................................................................30
29、px 和em 的区别。............................................................................................................31
30、描述一个”reset”的CSS 文件并如何使用它。知道normalize.css 吗?你了解他
们的不同之处?.......................................................................................................................31
31、Sass、LESS 是什么?大家为什么要使用他们?......................................................... 31
32、display:none 与visibility:hidden 的区别是什么?............................................. 32
34、CSS 中link 和@import 的区别是:.............................................................................. 32
35、简介盒子模型:...............................................................................................................32
36、为什么要初始化样式?...................................................................................................33
37、BFC 是什么?......................................................................................................................33
38、html 语义化是什么?......................................................................................................33
39、Doctype 的作用?严格模式与混杂模式的区别?....................................................... 34
40、IE 的双边距BUG:块级元素float 后设置横向margin,ie6 显示的margin 比设置
的较大。解决:加入_display:inline.............................................................................. 34
41、HTML 与XHTML——二者有什么区别?.......................................................................... 34
42、html 常见兼容性问题?..................................................................................................34
43、对WEB 标准以及W3C 的理解与认识.............................................................................. 35
44、行内元素有哪些?块级元素有哪些?CSS 的盒模型?..................................................... 35
45、前端页面有哪三层构成,分别是什么?作用是什么?.................................................. 35
46、Doctype 作用? 严格模式与混杂模式-如何触发这两种模式,区分它们有何意义?35
47、行内元素有哪些?块级元素有哪些? 空(void)元素有那些?................................ 35
48、CSS 的盒子模型?............................................................................................................36
49、CSS 选择符有哪些?哪些属性可以继承?优先级算法如何计算? CSS3 新增伪类有
那些?....................................................................................................................................... 36
50、如何居中div,如何居中一个浮动元素?....................................................................... 36
51、浏览器的内核分别是什么?经常遇到的浏览器的兼容性有哪些?原因,解决方法是
什么,常用hack 的技巧?...................................................................................................37
52、列出display 的值,说明他们的作用。position 的值, relative 和absolute 定
位原点是?...............................................................................................................................38
53、absolute 的containing block 计算方式跟正常流有什么不同?........................... 38
54、position 跟display、margin collapse、overflow、float 这些特性相互叠加后
会怎么样?...............................................................................................................................38
55、对WEB 标准以及W3C 的理解与认识.............................................................................. 38
56、css 的基本语句构成是?..................................................................................................39
57、浏览器标准模式和怪异模式之间的区别是什么?........................................................ 39
58、CSS 中可以通过哪些属性定义,使得一个DOM 元素不显示在浏览器可视范围内?39
59、超链接访问过后hover 样式就不出现的问题是什么?如何解决?..........................39
60、什么是Css Hack?ie6,7,8 的hack 分别是什么?.................................................... 39
62、请用Css 写一个简单的幻灯片效果页面...................................................................... 40
63、行内元素和块级元素的具体区别是什么?行内元素的padding 和margin 可设置吗?
................................................................................................................................................... 41
64、什么是外边距重叠?重叠的结果是什么?.................................................................. 41
65、rgba()和opacity 的透明效果有什么不同?.............................................................. 41
66、css 中可以让文字在垂直和水平方向上重叠的两个属性是什么?........................... 42
67、如何垂直居中一个浮动元素?.......................................................................................42
68、描述一个"reset"的CSS 文件并如何使用它。知道normalize.css 吗?你了解他们
的不同之处?...........................................................................................................................43
69、说display 属性有哪些?可以做什么?...................................................................... 43
70、哪些css 属性可以继承?...............................................................................................43
71、css 优先级算法如何计算?............................................................................................43
72、b 标签和strong 标签,i 标签和em 标签的区别?...................................................... 43
73、有那些行内元素、有哪些块级元素、盒模型?.......................................................... 44
74、有哪些选择符,优先级的计算公式是什么?行内样式和!important 哪个优先级高?
................................................................................................................................................... 45
75.我想让行内元素跟上面的元素距离10px,加margin-top 和padding-top 可以吗?45
76.CSS 的盒模型由什么组成?..............................................................................................45
77、.说说display 属性有哪些?可以做什么?................................................................ 45
78、哪些css 属性可以继承?...............................................................................................45
79、css 优先级算法如何计算?............................................................................................45
80、text-align:center 和line-height 有什么区别?................................................... 46
81、前端页面由哪三层构成,分别是什么?作用是什么?.............................................. 46
82、写一个表格以及对应的CSS,使表格奇数行为白色背景,偶数行为灰色,鼠标一上
去为黄色背景。.......................................................................................................................46
二、JS 基础...................................................................................................................................... 46
1、javascript 的typeof 返回哪些数据类型..................................................................... 46
2、例举3 种强制类型转换和2 种隐式类型转换?.............................................................. 46
3、split() join() 的区别...................................................................................................46
4、数组方法pop() push() unshift() shift()............................................................... 47
5、事件绑定和普通事件有什么区别.....................................................................................47
6、IE 和DOM 事件流的区别....................................................................................................47
7、IE 和标准下有哪些兼容性的写法....................................................................................47
8、call 和apply 的区别........................................................................................................48
9、b 继承a 的方法..................................................................................................................48
10、JavaScript this 指针、闭包、作用域....................................................................... 48
11、事件委托是什么...............................................................................................................48
12、闭包是什么,有什么特性,对页面有什么影响.......................................................... 48
13、如何阻止事件冒泡和默认事件.......................................................................................48
14、添加删除替换插入到某个接点的方法.................................................................... 49
15、javascript 的本地对象,内置对象和宿主对象......................................................... 49
16、document load 和document ready 的区别................................................................ 49
17、”==”和“===”的不同.................................................................................................49
18、javascript 的同源策略..................................................................................................50
19、编写一个数组去重的方法...............................................................................................50
20、JavaScript 是一门什么样的语言,它有哪些特点?................................................. 50
21、JavaScript 的数据类型都有什么?............................................................................. 51
22、已知ID 的Input 输入框,希望获取这个输入框的输入值,怎么做?(不使用第三方
框架)......................................................................................................................................... 52
23、希望获取到页面中所有的checkbox 怎么做?(不使用第三方框架)........................52
24、设置一个已知ID 的DIV 的html 内容为xxxx,字体颜色设置为黑色(不使用第三方
框架)......................................................................................................................................... 52
25、当一个DOM 节点被点击时候,我们希望能够执行一个函数,应该怎么做?..........52
26、看下列代码输出为何?解释原因。.............................................................................. 53
27、看下列代码,输出什么?解释原因。............................................................................ 53
28、看下列代码,输出什么?解释原因。............................................................................ 53
29、看代码给答案。...............................................................................................................54
30、已知数组var stringArray = [“This”, “is”, “Baidu”, “Campus”],
Alert 出”This is Baidu Campus”。......................................................................... 54
31、var numberArray = [3,6,2,4,1,5]; (考察基础API)................................... 55
32、输出今天的日期,以YYYY-MM-DD 的方式,比如今天是2014 年9 月26 日,则输出
2014-09-26...............................................................................................................................55
33、将字符串”<tr><td>{$id}</td><td>{$name}</td></tr>”中的{$id}替换成10,
{$name}替换成Tony (使用正则表达式)......................................................................... 56
34、为了保证页面输出安全,我们经常需要对一些特殊的字符进行转义,请写一个函数
escapeHtml,将<, >, &, “进行转义.......................................................................... 56
35、foo = foo||bar ,这行代码是什么意思?为什么要这样写?................................ 56
36、看下列代码,将会输出什么?(变量声明提升)............................................................ 57
37、用js 实现随机选取10–100 之间的10 个数字,存入一个数组,并排序。..........57
38、把两个数组合并,并删除第二个元素。...................................................................... 57
39、怎样添加、移除、移动、复制、创建和查找节点(原生JS,实在基础,没细写每
一步)....................................................................................................................................... 58
40、有这样一个URL:http://item.taobao.com/item.htm?a=1&b=2&c=&d=xxx&e,请写
一段JS 程序提取URL 中的各个GET 参数(参数名和参数个数不确定),将其按key-value
形式返回到一个json 结构中, 如{a: ’ 1 ′ , b: ’ 2 ′ , c: ” , d: ’
xxx’, e:undefined}。.......................................................................................................58
41、正则表达式构造函数var reg=new RegExp(“xxx”)与正则表达字面量var reg=//
有什么不同?匹配邮箱的正则表达式?.............................................................................. 59
42、写一个function,清除字符串前后的空格。(兼容所有浏览器).........................59
43、Javascript 中callee 和caller 的作用?................................................................. 60
44、Javascript 中, 以下哪条语句一定会产生运行错误? 答案( B ).........61
45、以下两个变量a 和b,a b 的哪个结果是NaN? 答案( C ).....................61
46、var a=10; b=20; c=4; b c a 以下哪个结果是正确的?答案( B )........61
47、下面的JavaScript 语句中,( D )实现检索当前页面中的表单元素中的所有文本
框,并将它们全部清空...........................................................................................................61
48、要将页面的状态栏中显示“已经选中该文本框”,下列JavaScript 语句正确的是
( A )..................................................................................................................................... 62
49、以下哪条语句会产生运行错误:(A)A.var obj = ();
.var obj = [];
Cvar obj = {};
D.ar obj = //;.......................................................................................................................62
50、以下哪个单词不属于javascript 保留字:(B)A.with
.parent
Cclass
D.oid......................................................................................................................................... 62
51、请选择结果为真的表达式:(C)A.null instanceof Object
.null === undefined
Cnull == undefined
D.aN == NaN.............................................................................................................................62
52、Javascript 中, 如果已知HTML 页面中的某标签对象的id=”username”,用
____document.getElementById(‘username’)___ _方法获得该标签对象。..............62
53 、typeof 运算符返回值中有一个跟javascript 数据类型不一致, 它是
________”function”_________。.....................................................................................62
54、定义了一个变量,但没有为该变量赋值,如果alert 该变量,javascript 弹出的
对话框中显示___undefined______ 。................................................................................ 62
55、分析代码,得出正确的结果。.......................................................................................62
56、写出函数DateDemo 的返回结果,系统时间假定为今天............................................ 63
57、写出程序运行的结果?...................................................................................................64
58、阅读以下代码,请分析出结果:...................................................................................64
59、补充按钮事件的函数,确认用户是否退出当前页面,确认之后关闭窗口; <html>64
60、写出简单描述html 标签(不带属性的开始标签和结束标签)的正则表达式,并将
以下字符串中的html 标签去除掉.........................................................................................65
61、完成foo()函数的内容,要求能够弹出对话框提示当前选中的是第几个单选框。65
62、完成函数showImg(),要求能够动态根据下拉列表的选项变化,更新图片的显示66
63、截取字符串abcdefg 的efg............................................................................................66
64、列举浏览器对象模型BOM 里常用的至少4 个对象,并列举window 对象的常用方法
至少5 个...................................................................................................................................67
65、简述列举文档对象模型DOM 里document 的常用的查找访问节点的方法并做简单说
明............................................................................................................................................... 67
66、希望获取到页面中所有的checkbox 怎么做?(不使用第三方框架)........................67
67、JavaScript 的数据类型都有什么?............................................................................. 67
68、javascript 中有哪几种数据类型,分别写出中文和英文。..................................... 68
69、javascript 中==和===的区别是什么?举例说明。................................................... 69
70、简述创建函数的几种方式...............................................................................................69
71、Javascript 如何实现继承?..........................................................................................69
72、Javascript 创建对象的几种方式?............................................................................. 69
73、把Script 标签放在页面的最底部的body 封闭之前和封闭之后有什么区别?浏
览器会如何解析它们?...........................................................................................................69
74、iframe 的优缺点?..........................................................................................................69
75、请你谈谈Cookie 的弊端?.............................................................................................70
76、DOM 操作——怎样添加、移除、移动、复制、创建和查找节点。........................... 70
77、js 延迟加载的方式有哪些?..........................................................................................70
78、documen.write 和innerHTML 的区别?..................................................................... 70
79、哪些操作会造成内存泄漏?...........................................................................................71
80、javascript 的typeof 返回哪些数据类型?................................................................. 71
81、split() join() 的区别.................................................................................................71
82、数组方法pop() push() unshift() shift()各表示什么意思?............................. 71
83、判断一个字符串中出现次数最多的字符,统计这个次数.......................................... 71
84、javascript 的typeof 返回哪些数据类型................................................................... 72
85、例举3 种强制类型转换和2 种隐式类型转换?............................................................ 72
86、split() join() 的区别.................................................................................................72
87、数组方法pop() push() unshift() shift()............................................................. 72
88、事件绑定和普通事件有什么区别.................................................. 错误!未定义书签。
89、IE 和DOM 事件流的区别..................................................................................................72
90、IE 和标准下有哪些兼容性的写法..................................................................................72
91、call 和apply 的区别......................................................................................................72
92、b 继承a 的方法............................................................................... 错误!未定义书签。
93、写一个获取非行间样式的函数.......................................................................................73
94、事件委托是什么.............................................................................. 错误!未定义书签。
95、闭包是什么,有什么特性,对页面有什么影响.......................................................... 73
96、解释jsonp 的原理,以及为什么不是真正的ajax..................................................... 73
97、javascript 的本地对象,内置对象和宿主对象......................................................... 73
98、document load 和document ready 的区别................................................................ 73
99、字符串反转,如将'12345678' 变成'87654321'.................................................... 74
100、将数字12345678 转化成RMB 形式如: 12,345,678 ....................................... 74
101、生成5 个不同的随机数;.............................................................................................74
102、去掉数组中重复的数字方法一;.............................................................................. 74
103、阶乘函数;.....................................................................................................................75
104、window.location.search() 返回的是什么?.......................................................... 76
105、window.location.hash 返回的是什么?................................................................ 76
106、window.location.reload() 作用?.......................................................................... 76
107、阻止冒泡函数.................................................................................................................76
108、什么是闭包? 写一个简单的闭包?;...................................................................... 77
109、javascript 中的垃圾回收机制?.............................................................................. 77
110、看题做答:.....................................................................................................................77
111、下面输出多少?.............................................................................................................78
112、再来一个.........................................................................................................................78
113、......................................................................................................................................... 78
114、......................................................................................................................................... 79
115、JS 的继承性....................................................................................................................80
116、精度问题: JS 精度不能精确到0.1 所以。。。。同时存在于值和差值中..80
117、加减运算.........................................................................................................................80
118、什么是同源策略?.........................................................................................................81
119、call 和applay 的区别是什么?..................................................................................81
120、为什么不能定义1px 左右的div 容器? .......................................................... 81
121、结果是什么?.................................................................................................................81
122、输出结果.........................................................................................................................81
123、计算字符串字节数:.....................................................................................................82
124、结果是:.........................................................................................................................82
125、声明对象,添加属性,输出属性................................................................................ 82
126、匹配输入的字符:第一个必须是字母或下划线开头,长度5-20........................... 82
127、检测变量类型.................................................................................................................83
128、如何在HTML 中添加事件,几种方法?...................................................................... 83
129、BOM 对象有哪些,列举window 对象?....................................................................... 83
130、请问代码实现outerHTML.............................................................................................83
131、JS 中的简单继承call 方法!.....................................................................................84
132、bind(), live(), delegate()的区别........................................................................ 85
133、typeof 的返回类型有哪些? ............................................................................ 85
134、简述link 和import 的区别?.....................................................................................86
135、window.onload 和document.ready 的区别?......................................................... 86
136、解析URL 成一个对象?...............................................................................................86
137、看下列代码输出什么?.................................................................................................86
138、看下列代码,输出什么?...............................................................................................87
139、已知数组var stringArray = ["This”, "is”, "Baidu”, "Campus”],Alert
出”This is Baidu Campus”。...........................................................................................87
140、已知有字符串foo="get-element-by-id",写一个function 将其转化成驼峰表示
法"getElementById"。...........................................................................................................87
141、怎样添加、移除、移动、复制、创建和查找节点.................................................... 87
142、原生JS 的window.onload 与Jquery 的$(document).ready(function(){})有什么
不同?....................................................................................................................................... 88
143、你如何优化自己的代码?.............................................................................................88
144、请描述出下列代码运行的结果.....................................................................................88
145、需要将变量e 的值修改为“a b c d”,请写出对应的代码.................................... 88
146、怎样实现两栏等高?.....................................................................................................89
147、使用js 实现这样的效果:在文本域里输入文字时,当按下enter 键时不换行,而
是替换成“{{enter}}”,(只需要考虑在行尾按下enter 键的情况)............................. 89
148、以下代码中end 字符串什么时候输出........................................................................ 89
149、specify(‘hello,world’)//=>’h,e,l,l,o,w,o,r,l,d’实现specify 函数..89
150、请将一个URL 的search 部分参数与值转换成一个json 对象................................ 89
151、请用原生js 实现jquery 的get\post 功能,以及跨域情况下.............................. 90
152、请简要描述web 前端性能需要考虑哪方面,你的优化思路是什么?....................90
153、简述readyonly 与disabled 的区别.......................................................................... 91
154、判断一个字符吕串出现次数最多的字符,统计这个次数并输出............................ 91
155、编写一个方法,去掉一个数组的复重元素................................................................ 91
156、写出3 个使用this 的典型应用...................................................................................91
157、请尽可能详尽的解释ajax 的工作原理...................................................................... 91
158、为什么扩展javascript 内置对象不是好的做法?.................................................. 91
159、请解释一下javascript 的同源策略.......................................................................... 91
160、什么是三元表达式?“三元”表示什么意思?........................................................ 91
161、浏览器标准模式和怪异模式之间的区别是什么?.................................................... 91
162、如果设计中使用了非标准的字体,你该如何去实现?............................................ 92
163、用css 分别实现某个div 元素上下居中和左右居中................................................ 92
164、modulo(12,5)//2 实现满足这个结果的modulo 函数............................................ 92
165、HTTP 协议中,GET 和POST 有什么区别?分别适用什么场景?............................ 92
166、HTTP 状态消息200 302 304 403 404 500 分别表示什么....................................... 93
167 、HTTP 协议中, header 信息里面, 怎么控制页面失效时间
(last-modified,cache-control,Expires 分别代表什么)........................................... 93
168、HTTP 雷锋议目前常用的有哪几个?KEEPALIVE 从哪个版本开始出现的?............93
169、业界常用的优化WEB 页面加载速度的方法(可以分别从页面元素展现,请求连接,
css,js,服务器等方面介绍).................................................................................................93
170、列举常用的web 页面开发,调试以及优化工具........................................................ 93
171、解释什么是sql 注入,xss 漏洞..................................................................................94
172、如何判断一个js 变量是数组类型.............................................................................. 94
173、请列举js 数组类型中的常用方法.............................................................................. 94
174、FF 与IE 中如何阻止事件冒泡,如何获取事件对象,以及如何获取触发事件的元
素............................................................................................................................................... 94
175、列举常用的js 框架以及分别适用的领域.................................................................. 94
176、js 中如何实现一个map.................................................................................................95
177、js 可否实现面向对象编程,如果可以如何实现js 对象的继承............................. 96
178、约瑟夫环—已知n 个人(以编号1,2,3…分别表示)围坐在一张圆桌周围。从
编号为k 的人开始报数,数到m 的那个人出列;他的下一个人又从1 开始报数,数到m
的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。..........................96
179、有1 到10w 这个10w 个数,去除2 个并打乱次序,如何找出那两个数?............96
180、如何获取对象a 拥有的所有属性(可枚举的、不可枚举的,不包括继承来的属性)
................................................................................................................................................... 96
181、有下面这样一段HTML 结构,使用css 实现这样的效果:...................................... 96
182、下面这段代码想要循环昝输出结果01234,请问输出结果是否正确,如果不正确,
请说明为什么,并修改循环内的代码使其输出正确结果.................................................. 97
183、解释下这个css 选择器什么发生什么?.................................................................... 97
184、JavaScript 以下哪条语句会产生运行错误............................................................... 97
185、以下哪些是javascript 的全局函数:(ABC)........................................................ 97
186、关于IE 的window 对象表述正确的有:(ACD)...................................................... 97
187、描述错误的是.................................................................................................................98
188、关于link 和@import 的区别正确的是A................................................................. 98
189、下面正确的是A...........................................................................................................98
188、错误的是.........................................................................................................................99
189、不用任何插件,如何实现一个tab 栏切换?............................................................ 99
190、基本数据类型的专业术语以及单词拼写.................................................................... 99
191、变量的命名规范以及命名推荐.....................................................................................99
192、三种弹窗的单词以及三种弹窗的功能........................................................................ 99
193、console.log( 8 | 1 ); 输出值是多少?................................................................ 99
194、只允许使用 - * / 和Math.* ,求一个函数y = f(x, a, b);当x > 100 时
返回a 的值,否则返回b 的值,不能使用if else 等条件语句,也不能使用|,?:,
数组。..................................................................................................................................... 100
195、JavaScriptalert(0.4*0.2);结果是多少?和你预期的一样吗?如果不一样该如何
处理?..................................................................................................................................... 100
196、一个div,有几种方式得到这个div 的jQuery 对象?<div class='aabbcc'
id='nodesView'></div>想直接获取这个div 的dom 对象,如何获取?dom 对象如何转
化为jQuery 对象?...............................................................................................................100
197、主流浏览器内核...........................................................................................................100
198、如何显示/隐藏一个dom 元素?请用原生的JavaScript 方法实现......................100
199、JavaScript 有哪几种数据类型..................................................................................101
200、jQuery 框架中$.ajax()的常用参数有哪些?写一个post 请求并带有发送数据和
返回数据的样例.....................................................................................................................101
201、JavaScript 数据元素添加、删除、排序等方法有哪些?..................................... 103
202、如何添加html 元素的事件,有几种方法?请列举................................................ 104
203、JavaScript 的循环语句有哪些?............................................................................. 104
204、作用域-编译期执行期以及全局局部作用域问题.................................................... 104
205、闭包:下面这个ul,如何点击每一列的时候alert 其index?.......................... 104
206、列出3 条以上ff 和IE 的脚本兼容问题.................................................................. 106
207、列举可以哪些方面对前端开发进行优化.................................................................. 106
208、至少列出一种JavaScript 继承的实现方式............................................................ 106
209、如现在有一个效果,有显示用户头像、用户昵称、用户其他信息;当用户鼠标移
到头像上时,会弹出用户的所有信息;如果是你,你会如何实现这个功能,请用代码实
现?......................................................................................................................................... 106
210、call 与apply 有什么作用?又有什么什么区别?用callee 属性实现函数递归?106
211、用正则表达式,写出由字母开头,其余由数字、字母、下划线组成的6~30 的字符
串?......................................................................................................................................... 107
212、列举浏览器对象模型BOM 里常用的至少4 个对象,并列举window 对象的常用方法
至少5 个(10 分)..............................................................................................................107
213、Javascript 中callee 和caller 的作用?............................................................. 107
214、对于apply 和call 两者在作用上是相同的,即是调用一个对象的一个方法,以另
一个对象替换当前对象。将一个函数的对象上下文从初始的上下文改变为由thisObj
指定的新对象。.....................................................................................................................107
215、在Javascript 中什么是伪数组?如何将伪数组转化为标准数组?....................107
216、写一个函数可以计算sum(5,0,-5);输出0; sum(1,2,3,4);输出10;................108
217、事件代理怎么实现?...................................................................................................108
218、《正则》写出正确的正则表达式匹配固话号,区号3-4 位,第一位为0,中横线,
7-8 位数字,中横线,3-4 位分机号格式的固话号.......................................................... 108
219、《算法》一下A,B 可任选一题作答,两题全答加分............................................ 109
220、请写出一张图片的HTML 代码,已知道图片地址为“images/abc.jpg”,宽100px,
高50px.................................................................................................................................... 109
221、请写一个正则表达式:要求最短6 位数,最长20 位,阿拉伯数和英文字母(不区
分大小写)组成.....................................................................................................................109
222、统计1 到400 亿之间的自然数中含有多少个1?比如1-21 中,有1、10、11、21
这四个自然数有5 个1..........................................................................................................109
223、删除与某个字符相邻且相同的字符,比如fdaffdaaklfjklja 字符串处理之后成为
“fdafdaklfjklja”.............................................................................................................109
224、请写出三种以上的Firefox 有但,InternetExplorer 没有的属性活函数.........109
225、请写出一个程序,在页面加载完成后动态创建一个form 表单,并在里面添加一个
input 对象并给它任意赋值后义post 方式提交到:http://127.0.0.1/save.php.....110
226、用JavaScript 实现冒泡排序。数据为23、45、18、37、92、13、24...............110
227、解释一下什么叫闭包,并实现一段闭包代码.......................................................... 110
228、简述一下什么叫事件委托以及其原理...................................................................... 110
229、前端代码优化的方法...................................................................................................110
230、下列JavaScript 代码执行后,依次alert 的结果是............................................ 111
231、下列JavaScript 代码执行后,iNum 的值是........................................................... 111
232、输出结果是多少?.......................................................................................................112
233、....................................................................................................................................... 114
234、下列JavaScript 代码执行后,运行的结果是........................................................ 115
235、下列JavaScript 代码执行后,依次alert 的结果是............................................ 115
236、下列JavaScript 代码执行后的效果是.................................................................... 116
237、下列JavaScript 代码执行后的li 元素的数量是.................................................. 116
238、程序中捕获异常的方法?...........................................................................................117
239、将字符串”<tr><td>{$id}</td><td>{$name}</td></tr>”中的{$id}替换成10,
{$name}替换成Tony (使用正则表达式)....................................................................... 117
240、给String 对象添加一个方法,传入一个string 类型的参数,然后将string 的每
个字符间价格空格返回,例如:.........................................................................................117
241、写出函数DateDemo 的返回结果,系统时间假定为今天........................................ 117
242、输出今天的日期,以YYYY-MM-DD 的方式,比如今天是2014 年9 月26 日,则输出
2014-09-26.............................................................................................................................118
243、已知数组var?stringArray?=?[“This”,?“is”,?“Baidu”,?“Campus”],
Alert 出”This?is?Baidu?Campus”。............................................................................. 118
244、已知有字符串foo=”get-element-by-id”,写一个function 将其转化成驼峰表
示法”getElementById”。.................................................................................................118
245、.varnumberArray=[3,6,2,4,1,5]; (考察基础API)......................................... 119
246、把两个数组合并,并删除第二个元素。.................................................................. 119
247、如何消除一个数组里面重复的元素?...................................................................... 119
248、用js 实现随机选取10–100 之间的10 个数字,存入一个数组,并排序。......120
249、正则表达式构造函数var reg=new RegExp(“xxx”)与正则表达字面量var reg=//
有什么不同?匹配邮箱的正则表达式?............................................................................ 120
250、1var regMail =
/^([a-zA-Z0-9_-]) @([a-zA-Z0-9_-]) ((.[a-zA-Z0-9_-]{2,3}){1,2})$/;............120
251、数组和字符串...............................................................................................................121
252、下列控制台都输出什么...............................................................................................122
253、第2 题:.......................................................................................................................122
254、第3 题:.......................................................................................................................122
255、第4 题:.......................................................................................................................122
256、第5 题:.......................................................................................................................123
257、第6 题:.......................................................................................................................123
258、第7 题:.......................................................................................................................123
259、第8 题:.......................................................................................................................123
260、第9 题:.......................................................................................................................123
261、第10 题:.....................................................................................................................124
262、第11 题:考点:函数声明提前................................................................................ 124
263、第12 题:.....................................................................................................................124
264、第13 题:.....................................................................................................................124
265、第14 题:.....................................................................................................................125
266、第15 题.........................................................................................................................125
267、第16 题.........................................................................................................................125
三、Jquery..................................................................................................................................... 126
1、jQuery 的slideUp 动画,如果目标元素是被外部事件驱动, 当鼠标快速地连续触
发外部元素事件, 动画会滞后的反复执行,该如何处理呢?.......................................... 126
四、HTML5 CSS3.............................................................................................................................126
1、CSS3 有哪些新特性?......................................................................................................126
2、html5 有哪些新特性、移除了那些元素?如何处理HTML5 新标签的浏览器兼容问题?
如何区分HTML 和HTML5?.................................................................................................126
3、本地存储(Local Storage )和cookies(储存在用户本地终端上的数据)之间的
区别是什么?.........................................................................................................................127
4、如何实现浏览器内多个标签页之间的通信?................................................................ 127
5、你如何对网站的文件和资源进行优化?...................................................................... 127
6、什么是响应式设计?.......................................................................................................127
7、新的HTML5 文档类型和字符集是?............................................................................ 127
8、HTML5 Canvas 元素有什么用?.....................................................................................128
9、HTML5 存储类型有什么区别?.......................................................................................128
10、用H5 CSS3 解决下导航栏最后一项掉下来的问题.................................................... 128
11、CSS3 新增伪类有那些?................................................................................................128
12、请用CSS 实现:一个矩形内容,有投影,有圆角,hover 状态慢慢变透明。.....128
13、描述下CSS3 里实现元素动画的方法.......................................................................... 128
14、html5\CSS3 有哪些新特性、移除了那些元素?如何处理HTML5 新标签的浏览器兼
容问题?如何区分HTML 和HTML5?................................................................................ 128
15、你怎么来实现页面设计图,你认为前端应该如何高质量完成工作? 一个满屏品字
布局如何设计?.....................................................................................................................129
16、你能描述一下渐进增强和优雅降级之间的不同吗?.................................................. 129
17、为什么利用多个域名来存储网站资源会更有效?.................................................... 130
18、请谈一下你对网页标准和标准制定机构重要性的理解。........................................ 130
19、请描述一下cookies,sessionStorage 和localStorage 的区别?......................130
20、知道css 有个content 属性吗?有什么作用?有什么应用?................................ 131
21、如何在HTML5 页面中嵌入音频?................................................................................ 131
22、如何在HTML5 页面中嵌入视频?.............................................................................. 132
23、HTML5 引入什么新的表单属性?................................................................................ 132
24、CSS3 新增伪类有那些?................................................................................................132
25、(写)描述一段语义的html 代码吧。.......................................................................... 132
26.cookie 在浏览器和服务器间来回传递。sessionStorage 和localStorage 区别133
27、html5 有哪些新特性、移除了那些元素?如何处理HTML5 新标签的浏览器兼容问题?
如何区分HTML 和HTML5?.................................................................................................133
28、如何区分: DOCTYPE 声明\新增的结构元素\功能元素........................................... 134
29、语义化的理解?.............................................................................................................134
30、HTML5 的离线储存?......................................................................................................134
31、写出HTML5 的文档声明方式.........................................................................................134
32、HTML5 和CSS3 的新标签............................................................................... 134
33、自己对标签语义化的理解.............................................................................................134
五、移动web 开发.........................................................................................................................134
1、移动端常用类库及优缺点...............................................................................................134
2、Zepto 库和JQ 区别..........................................................................................................134
六、Ajax......................................................................................................................................... 135
1、Ajax 是什么? 如何创建一个Ajax?........................................................................... 135
2、同步和异步的区别?.........................................................................................................135
3、如何解决跨域问题?.........................................................................................................135
4、页面编码和被请求的资源编码如果不一致如何处理?.............................................. 136
5、简述ajax 的过程。........................................................................................................136
6、阐述一下异步加载。.......................................................................................................136
7、请解释一下JavaScript 的同源策略。...................................................................... 136
8、GET 和POST 的区别,何时使用POST?........................................................................ 136
9、ajax 是什么?ajax 的交互模型?同步和异步的区别?如何解决跨域问题?..............137
10、Ajax 的最大的特点是什么。......................................................................................137
11、ajax 的缺点....................................................................................................................137
12、ajax 请求的时候get 和post 方式的区别................................................................ 137
13、解释jsonp 的原理,以及为什么不是真正的ajax................................................... 137
14、什么是Ajax 和JSON,它们的优缺点。..................................................................... 137
15、http 常见的状态码有那些?分别代表是什么意思?............................................... 138
16、一个页面从输入URL 到页面加载显示完成,这个过程中都发生了什么?..........138
17、ajax 请求的时候get 和post 方式的区别................................................................ 138
18、ajax 请求时,如何解释json 数据............................................................................. 138
19、.javascript 的本地对象,内置对象和宿主对象..................................................... 139
20、为什么利用多个域名来存储网站资源会更有效?.................................................... 139
21、请说出三种减低页面加载时间的方法........................................................................ 139
22、HTTP 状态码都有那些。................................................................................................139
七、JS 高级.................................................................................................................................... 139
1、JQuery 一个对象可以同时绑定多个事件,这是如何实现的?............................... 139
2、知道什么是webkit 么? 知道怎么用浏览器的各种工具来调试和debug 代码么?139
3、如何测试前端代码么? 知道BDD, TDD, Unit Test 么? 知道怎么测试你的前端工程
么(mocha, sinon, jasmin, qUnit..)?............................................................................ 140
4、前端templating(Mustache, underscore, handlebars)是干嘛的, 怎么用?.....140
5、简述一下Handlebars 的基本用法?........................................................................ 140
6、简述一下Handlerbars 的对模板的基本处理流程, 如何编译的?如何缓存的?140
7、用js 实现千位分隔符?...................................................................................................140
8、检测浏览器版本版本有哪些方式?.............................................................................. 140
9、我们给一个dom 同时绑定两个点击事件,一个用捕获,一个用冒泡,你来说下会执
行几次事件,然后会先执行冒泡还是捕获........................................................................ 141
10、实现一个函数clone,可以对JavaScript 中的5 种主要的数据类型(包括Number、
String、Object、Array、Boolean)进行值复制............................................................ 141
11、如何消除一个数组里面重复的元素?........................................................................ 142
12、小贤是一条可爱的小狗(Dog),它的叫声很好听(wow),每次看到主人的时候就会乖
乖叫一声(yelp)。从这段描述可以得到以下对象:........................................................ 142
13、下面这个ul,如何点击每一列的时候alert 其index?(闭包).......................... 143
14、编写一个JavaScript 函数,输入指定类型的选择器(仅需支持id,class,tagName
三种简单CSS 选择器,无需兼容组合选择器)可以返回匹配的DOM 节点,需考虑浏览器
兼容性和性能。.....................................................................................................................144
15、请评价以下代码并给出改进意见。............................................................................ 145
16、给String 对象添加一个方法,传入一个string 类型的参数,然后将string 的每
个字符间价格空格返回,例如:.........................................................................................146
17、定义一个log 方法,让它可以代理console.log 的方法。.................................... 147
18、在Javascript 中什么是伪数组?如何将伪数组转化为标准数组?......................147
19、对作用域上下文和this 的理解,看下列代码:...................................................... 148
20、原生JS 的window.onload 与Jquery 的$(document).ready(function(){})有什么
不同?如何用原生JS 实现Jq 的ready 方法?................................................................ 148
21、(设计题)想实现一个对页面某个节点的拖曳?如何做?(使用原生JS).......150
22、......................................................................................................................................... 151
23、说出以下函数的作用是?空白区域应该填写什么?................................................ 152
24、Javascript 作用链域?..................................................................................................153
25、谈谈This 对象的理解。.............................................................................................153
26、eval 是做什么的?........................................................................................................153
27、关于事件,IE 与火狐的事件机制有什么区别? 如何阻止冒泡?......................... 153
28、什么是闭包(closure),为什么要用它?.............................................................. 153
29、javascript 代码中的"use strict";是什么意思? 使用它区别是什么?..........154
30、如何判断一个对象是否属于某个类?........................................................................ 155
31、new 操作符具体干了什么呢?........................................................................................155
32、用原生JavaScript 的实现过什么功能吗?.............................................................. 155
33、Javascript 中,有一个函数,执行时对象查找时,永远不会去查找原型,这个函
数是?..................................................................................................................................... 155
34、对JSON 的了解?...........................................................................................................155
35、js 延迟加载的方式有哪些?........................................................................................155
36、模块化开发怎么做?.....................................................................................................156
37、AMD(Modules/Asynchronous-Definition)、CMD(Common Module Definition)
规范区别?.............................................................................................................................156
38、requireJS 的核心原理是什么?(如何动态加载的?如何避免多次加载的?如何缓
存的?)................................................................................................................................. 156
39、让你自己设计实现一个requireJS,你会怎么做?................................................. 156
40、谈一谈你对ECMAScript6 的了解?............................................................................ 156
41、ECMAScript6 怎么写class 么,为什么会出现class 这种东西?.......................... 157
42、异步加载的方式有哪些?.............................................................................................157
43、documen.write 和innerHTML 的区别?...................................................................... 157
44、DOM 操作——怎样添加、移除、移动、复制、创建和查找节点?........................... 157
45、call() 和.apply() 的含义和区别?...................................................................... 158
46、数组和对象有哪些原生方法,列举一下?................................................................ 158
47、JS 怎么实现一个类。怎么实例化这个类.................................................................. 158
48、JavaScript 中的作用域与变量声明提升?............................................................... 159
49、如何编写高性能的Javascript?............................................................................... 159
50、那些操作会造成内存泄漏?.........................................................................................159
51、javascript 对象的几种创建方式?........................................................................... 159
52、javascript 继承的6 种方法?..................................................................................160
53、eval 是做什么的?........................................................................................................160
54、JavaScript 原型,原型链? 有什么特点?............................................................ 160
55、事件、IE 与火狐的事件机制有什么区别? 如何阻止冒泡?................................. 160
56、简述一下Sass、Less,且说明区别?....................................................................... 160
57、关于javascript 中apply()和call()方法的区别?.............................................. 161
58、简述一下JS 中的闭包?...............................................................................................161
59、说说你对this 的理解?...............................................................................................161
60、分别阐述split(),slice(),splice(),join()?..................................................... 161
61、事件委托是什么?.........................................................................................................161
62、如何阻止事件冒泡和默认事件?................................................................................ 162
63、添加删除替换插入到某个接点的方法?.............................................................. 162
64、你用过require.js 吗?它有什么特性?.................................................................. 162
65、谈一下JS 中的递归函数,并且用递归简单实现阶乘?.......................................... 162
66、请用正则表达式写一个简单的邮箱验证。................................................................ 162
67、简述一下你对web 性能优化的方案?........................................................................ 162
68、在JS 中有哪些会被隐式转换为false....................................................................... 163
69、定时器setInterval 有一个有名函数fn1,setInterval(fn1,500)与setInterval
(fn1(),500)有什么区别?...............................................................................................163
70、外部JS 文件出现中文字符,会出现什么问题,怎么解决?.................................. 163
71、谈谈浏览器的内核,并且说一下什么是内核?........................................................ 163
72、JavaScript 原型,原型链? 有什么特点?............................................................. 163
73、写一个通用的事件侦听器函数.....................................................................................164
74、事件、IE 与火狐的事件机制有什么区别? 如何阻止冒泡?................................. 166
75、什么是闭包(closure),为什么要用?.................................................................. 166
76、如何判断一个对象是否属于某个类?........................................................................ 166
77、new 操作符具体干了什么呢?........................................................................................167
78、JSON 的了解...................................................................................................................167
79、js 延迟加载的方式有哪些............................................................................................167
80、模块化怎么做?.............................................................................................................167
81、异步加载的方式.............................................................................................................168
82、告诉我答案是多少?.....................................................................................................168
83、JS 中的call()和apply()方法的区别?................................................................... 168
84、Jquery 与jQuery UI 有啥区别?.............................................................................. 168
85、jquery 中如何将数组转化为json 字符串,然后再转化回来?............................ 169
86、JavaScript 中的作用域与变量声明提升?............................................................... 169
87、前端开发的优化问题(看雅虎14 条性能优化原则)。.......................................... 169
88、http 状态码有那些?分别代表是什么意思?........................................................... 170
89、一个页面从输入URL 到页面加载显示完成,这个过程中都发生了什么?(流程说
的越详细越好).....................................................................................................................170
八、流行框架................................................................................................................................. 170
1、JQuery 的源码看过吗?能不能简单概况一下它的实现原理?................................. 170
2、jQuery.fn 的init 方法返回的this 指的是什么对象?为什么要返回this?......170
3、jquery 中如何将数组转化为json 字符串,然后再转化回来?............................... 170
4、jQuery 的属性拷贝(extend)的实现原理是什么,如何实现深拷贝?....................170
5、jquery.extend 与jquery.fn.extend 的区别?....................................................... 170
6、谈一下Jquery 中的bind(),live(),delegate(),on()的区别?............................. 171
7、JQuery 一个对象可以同时绑定多个事件,这是如何实现的?................................. 171
8、Jquery 与jQuery UI 有啥区别?..................................................................................171
9、jQuery 和Zepto 的区别?各自的使用场景?............................................................. 171
10、针对jQuery 的优化方法?.........................................................................................171
11、Zepto 的点透问题如何解决?......................................................................................171
12、知道各种JS 框架(Angular, Backbone, Ember, React, Meteor, Knockout...)么?
能讲出他们各自的优点和缺点么?.......................................................................................172
13、Underscore 对哪些JS 原生对象进行了扩展以及提供了哪些好用的函数方法?172
14、使用过angular 吗?angular 中的过滤器是干什么用的......................................... 172
九、移动APP 开发.........................................................................................................................172
1、移动端最小触控区域是多大?.......................................................................................172
十、NodeJs..................................................................................................................................... 172
1、对Node 的优点和缺点提出了自己的看法:................................................................ 172
2、需求:实现一个页面操作不会整页刷新的网站,并且能在浏览器前进、后退时正确
响应。给出你的技术实现方案?.........................................................................................172
3、Node.js 的适用场景?....................................................................................................173
4、(如果会用node)知道route, middleware, cluster, nodemon, pm2, server-side
rendering 么?........................................................................................................................173
5、解释一下Backbone 的MVC 实现方式?.................................................................... 173
6、什么是“前端路由”?什么时候适合使用“前端路由”? “前端路由”有哪些优点和
缺点?....................................................................................................................................... 173
7、对Node 的优点和缺点提出了自己的看法?................................................................ 173
十一、前端概括性问题.................................................................................................................174
1、常使用的库有哪些?常用的前端开发工具?开发过什么应用或组件?..................174
2、对BFC 规范的理解?(W3C CSS 2.1 规范中的一个概念,它决定了元素如何对其内容
进行定位,以及与其他元素的关系和相互作用。)........................................................ 174
3、99%的网站都需要被重构是那本书上写的?................................................................ 174
4、WEB 应用从服务器主动推送Data 到客户端有那些方式?......................................... 174
5、加班的看法.......................................................................................................................174
6、平时如何管理你的项目,如何设计突发大规模并发架构?...................................... 174
7、那些操作会造成内存泄漏?...........................................................................................175
8、你说你热爱前端,那么应该WEB 行业的发展很关注吧? 说说最近最流行的一些东西
吧?......................................................................................................................................... 175
9、你有了解我们公司吗?说说你的认识?...................................................................... 175
10、移动端(比如:Android IOS)怎么做好用户体验?................................................ 175
11、你所知道的页面性能优化方法有那些?.................................................................... 175
12、除了前端以外还了解什么其它技术么?你最最厉害的技能是什么?....................175
13、AMD(Modules/Asynchronous-Definition)、CMD(Common Module Definition)
规范区别?.............................................................................................................................175
14、谈谈你认为怎样做能是项目做的更好?.................................................................... 175
15、你对前端界面工程师这个职位是怎么样理解的?它的前景会怎么样?................176
16、php 中下面哪个函数可以打开一个文件,以对文件进行读和写操作?.................176
17、php 中rmdir 可以直接删除文件夹吗?该目录必须是空的,而且要有相应的权限--
来自api.................................................................................................................................. 176
18、phpinset 和empty 的区别,举例说明....................................................................... 176
19、php 中$_SERVER 变量中如何得到当前执行脚本路劲................................................ 176
20、写一个php 函数,要求两个日期字符串的天数差,如2012-02-05~2012-03-06 的日
期差数..................................................................................................................................... 177
21、一个衣柜中放了许多杂乱的衬衫,如果让你去整理一下,使得更容易找到你想要的
衣服;你会怎么做?请写出你的做法和思路?................................................................ 177
22、如何优化网页加载速度?.............................................................................................177
23、工作流程,你怎么来实现页面设计图,你认为前端应该如何高质量完成工作?..177
24、介绍项目经验、合作开发、独立开发。.................................................................... 177
25、开发过程中遇到困难,如何解决。............................................................................ 177
26、对前端界面工程师这个职位是怎么样理解的?它的前景会怎么样?....................177
评论