

下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2018前端面试题及答案汇总1、什么是盒子模型?在网页中,一个元素占有空间的大小由几个部分构成,其中包括元素的内容(con te nt ),元素的内边距(padding ),元素的边框(border ),元素的外边距(margin )四个部分。 这四个部分占有的空间中,有的部分可以显示相应的内容,而有的部分只用来分隔相邻的区域或区域。4 个部分一起构成了 css 中元素的盒模型。2、 行内元素有哪些?块级元素有哪些?空(void)元素有那些?行内元素: a、b、spa n、img、in put、strong 、select、label、em、butt on 、textar ea块级元素:div
2、、ul、li、dl、dt、dd、p、h1-h6、blockquote空元素:即系没有内容的HTML 元素,例如:br、meta、hr、link、in put、img3、CSS 实现垂直水平居中一道经典的问题,实现方法有很多种,以下是其中一种实现:HTML 结构:CSS :.wrapperpositi on: relative;.contentbackgrou nd-color:#6699FF;width:200px;height:200px;positio n: absolute; /父元素需要相对定位top: 50%;left: 50%;margin-top:-100px ; /二分之一的
3、height , widthmargin-left: -100px;4、简述一下 src 与 href 的区别href 是指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接, 用于超链接。src 是指向外部资源的位置,指向的内容将会嵌入到文档中当前标签所在位置;在请求src资源时会将其指向的资源下载并应用到文档内,例如js 脚本,img 图片和 frame 等元素。当浏览器解析到该元素时,会暂停其他资源的下载和处理,直到将该资源加载、编译、执行完毕,图片和框架等元素也如此,类似于将所指向资源嵌入当前标签内。这也是为什么将js 脚本放在底部而不是头部。5、什么是 CSS H
4、ack?一般来说是针对不同的浏览器写不同的CSS,就是 CSS Hack。IE 浏览器 Hack 般又分为三种,条件 Hack、属性级 Hack、选择符 Hack(详细参考 C SS 文档:css文档)。例如:/ 1 、条件 Hack.testcolor:red;/ 2 、属性 Hack.testcolor:#0909; /* For IE8+ */*color:#f00; /* For IE7 and earlier */_color:#ffO; /* For IE6 and earlier */ 3、选择符 Hack*html .testcolor:#090; /* For IE6 and
5、 earlier */*+ html .testcolor:#ff0; /* For IE7 */6、 简述同步和异步的区别同步是阻塞模式,异步是非阻塞模式。同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么这个进程将会一直等待下去,直到收到返回信息才继续执行下去;异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。7、 px 和 em 的区别px 和 em 都是长度单位,区别是,px 的值是固定的,指定是多少就是多少,计算比较容易。em 得值不是固定的,并且em 会继承父级元素的字
6、体大小。浏览器的默认字体高都是16px。所以未经调整的浏览器都符合:1em=16px 。那么 12px=0.75em,10px=0.625em8、 什么叫优雅降级和渐进增强?渐进增强 progressiveenhan ceme nt :针对低版本浏览器进行构建页面,保证最基本的功能,然后再针对高级浏览器进行效果、交互等改进和追加功能达到更好的用户体验。优雅降级 graceful degradation :一开始就构建完整的功能,然后再针对低版本浏览器进行兼容。区别:a.优雅降级是从复杂的现状开始,并试图减少用户体验的供给b.渐进增强则是从一个非常基础的,能够起作用的版本开始,并不断扩充,以适应
7、未来环境的需要c.降级(功能衰减)意味着往回看;而渐进增强则意味着朝前看,同时保证其根基处于安 全地带9、 浏览器的内核分别是什么?IE: tride nt 内核Firefox : gecko 内核Safari : webkit 内核Opera :以前是 presto 内核,Opera 现已改用 Google Chrome 的 Blink 内核Chrome : Blink(基于 webkit ,Google 与 Opera Software 共同开发)1、怎样添加、移除、移动、复制、创建和查找节点?1)创建新节点createDocumentFragment() /创建一个 DOM 片段crea
8、teEleme nt() /创建一个具体的元素createTextNode() / 创建一个文本节点2)添加、移除、替换、插入appe ndChild() /添加removeChild()/移除replaceChild() /替换in sertBefore() /插入3)查找getEleme ntsByTagName()/通过标签名称getEleme ntsByName()/通过元素的 Name 属性的值getElementByld() / 通过元素 Id,唯一性2、实现一个函数 clone,可以对 JavaScript 中的 5 种主要的数据类型(包 括 Number 、String 、Ob
9、ject 、Array、Boolean )进行值复制。(Obj totype.toString.call()方法及面试应用)/*对象克隆支持基本数据类型及对象3437递归方法*/1422ai321iIS192027胡2930in obj) clone(objki;function clone(obj) var o;switch (typeof ofrj) case undefified: break:break;default;o - ofrjbreak:case string o m obj +break;case nuniber:o obj - 0;break;case bo
10、olean:o = obj;break;case object: object令令牺牺赫赫配配梯梯(fltijectJ 3SS Mrrciy?if (obj null) o = null; lse if (ftject.pratotype.toString.call(obj).slice(8 -1) Array;for (vir i = i f(arrl 1 ) 6arr2.push(arrli);79 document,write(a rr2);4、想实现一个对页面某个节点的拖曳?如何做?(使用原生JS )。注意:为了让元素可拖动,需要使用HTML5 draggable 属性。提示:链接和图
11、片默认是可拖动的,不需要draggable 属性。在拖放的过程中会触发以下事件:+在拖动目标上触发事件(源元素):*on dragstart -用户开始拖动元素时触发*on drag -元素正在拖动时触发*on drage nd -用户完成元素拖动后触发释放目标时触发的事件:*on drage nter -当被鼠标拖动的对象进入其容器范围内时触发此事件ondragover -当某被拖动的对象在另一对象容器范围内拖动时触发此事件*on dragleave -当被鼠标拖动的对象离开其容器范围内时触发此事件on drop -在一个拖动过程中,释放鼠标键时触发此事件1 123h45ondrag相关审件
12、67 droptarget 8float: left;9width: 100px;10height: 35px;11targin: 15px;12padding: 16px;13border: lpx solid waaaaaa;141516171819Jy) )ifc! 202122注意:Internet Explorer 8及更早IE版本或Safari 5.1及更早版本白23x/p242526document 311/6“上1_15七6八广(-(1厂385上3厂上unction(event) 27/do ta Transfer. stData()万扶没亶教熔类Si和/S功的HIS28eve
13、nt .dataTransfer 5etData(*Text:* event .target $d);29X /卜X 户n rf* A.貝&“ 9/ JvX/39document .getEleoentById(MdcoM) innerHTML- 幵始拖动P元摩;31# jrt令右二* va32vent.tprget opacity - 0 4;333435document addEventL丄stGne厂(drdg*# functlon(event) 36document.getEleoentById(deoM) style vo】o red;37;38/竟iti题元隶 0 出一t!
14、?文*元衣乾囊豪透晌度39document functioa(event) 40document .getElMCntByXd(MdcoM). innerHTML-壳战p元奔的拖动;41event op v:ty *1;42);43;se/ 伙a播况下.致繼丿元玄不絶在其他元it中戡憾曲. 耐于drop戎们gleaveM, funct ion (event) 56if ( event.target.classNaae droptarget ) 57event targettyle.border S859);60八对于dgp.防止春的9(从处復数败 矽rep申蔓9CH tTfF)61ff / 9
15、 f讣rtrT/ f 1Ar*rI 红4介If孙宠JT dfdro“64J?KA7J9bropr JT */65document addEventListenerdrop, function(event) 66eventpreventDefault():67i-f ( event .target .vlassNaibe *droptarget* ) 68document getE】EentByXd(deoi)style.color -69event target:.style.border* - *;70var data - event .dataTransfer717273);747576
16、1 5、在 Javascript中什么是伪数组?如何将伪数组转化为标准数组?伪数组(类数组):无法直接调用数组方法或期望len gth 属性有什么特殊的行为,但仍可以对真正数组遍历方法来遍历它们。典型的是函数的argume nt 参数,还有像调用 getEleme ntsByTagName,docume nt.childNodes之类的,它们都返回 NodeList 对象都属于伪数组。a. 使用 Atotype.slice.call();iAtotype.lice.call(14&length:367);b.使用.slice.call(),了解 js 原
17、型链的都知道,实际上这种方法和第一中方法是一样的,但上面第一种万式相对效率更咼。1hsllce.callH2S/likeke,咅1:12.斗2:true,5length;36 );7jit PUS c 使用 ES6 中 Array.from 方法;1Array.fraB(29:iSlk3l:12f42:2913,567length;吃);66、Javascript 中 callee 和 caller 的作用?caller 是返回一个对函数的引用,该函数调用了当前函数;callee 是返回正在被执行的function函数,也就是所指定的function对象的正文。7、 请描述一下 cookies
18、 , session Storage和 local storage的区另 SsessionStorage用于本地存储一个会话(session )中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后数据也随之销毁。因此sessio nStorage不是一种持久化的本地存储,仅仅是会话级别的存储。而localstorage用于持久化的本地存储,除非主动删除数据,否则数据是永远不会过期的。web storage 禾口 cookie 的区另 UWeb Storage 的概念和 cookie 相似,区别是它是为了更大容量存储设计的。Cookie 的大小是受限的,并且每次你请求一个新的页面的
19、时候 Cookie 都会被发送过去,这样无形中 浪费了带宽,另外 cookie 还需要指定作用域,不可以跨域调用。除此之外,Web Storage 拥有 setltem,getltem,removeltem,clear等方法,不像 cookie 需要前端开发者自己圭寸装setCookie , getCookie。但是 Cookie 也是不可以或缺的:Cookie 的作用是与服务器进行交互,作为HTTP 规范的一部分而存在,而 Web Storage 仅仅是为了在本地 存储”数据而生。8、手写数组快速排序关于快排算法的详细说明,可以参考阮一峰老师的文章快速排序快速排序”的思想很简单,整个排序过程只需要三步:(1)在数据集之中,选择一个元素作为基准”(pivot )。(2) 所有小于”基准”的元素,都移到”基准”的左边;所有大于”基准”的元素,都移到”基准”的右边。(3) 对”基准”左边和右边的两个子集,不断重复第一步和第二步,直到所有子集只剩下一 个元素为止。9、统计字符串” aaaabbbccccddfgh ”中字母个数或统计最多字
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆医科大学《智能控制》2023-2024学年第二学期期末试卷
- 长沙环境保护职业技术学院《初级英语阅读二》2023-2024学年第一学期期末试卷
- 扬州大学广陵学院《西班牙社会与文化》2023-2024学年第二学期期末试卷
- 天津商业大学《计算机在材料工程中的应用》2023-2024学年第二学期期末试卷
- 南京市重点中学2024-2025学年中考语文试题模拟试卷含解析
- 永州师范高等专科学校《混凝土结构原理与设计》2023-2024学年第二学期期末试卷
- 江苏省苏州市梁丰重点达标名校2024-2025学年初三毕业班第一次摸底考试化学试题含解析
- 湖北经济学院《网球(2)》2023-2024学年第一学期期末试卷
- 郑州财税金融职业学院《信息与网络安全管理》2023-2024学年第二学期期末试卷
- 苏州健雄职业技术学院《康复疗法学》2023-2024学年第二学期期末试卷
- 高中化学总复习基础知识填空
- 2025年01月工业和信息化部工业文化发展中心第三批社会公开招聘2人笔试历年典型考题(历年真题考点)解题思路附带答案详解
- 江苏无锡历年中考语文古诗欣赏试题汇编(2003-2022)
- 西辽河流域考古学文化的英语译介和传播
- 北师大版四年级数学下册期中检测试卷(2套)(附答案)
- 2024CSCO免疫检查点抑制剂相关的毒性管理指南
- 专题07大气的组成和垂直分层(解析版)
- 2025年广发银行股份有限公司招聘笔试参考题库含答案解析
- 脚手架拆除施工专项方案(最终)
- 2025年酒店财务部工作计划(5篇)
- 空调安装调试及售后服务方案
评论
0/150
提交评论