前端开发面试题及答案

2024-12-05 试题

  在社会的各个领域,我们总免不了要接触或使用试题,借助试题可以检验考试者是否已经具备获得某种资格的基本能力。什么样的试题才是好试题呢?下面是小编为大家整理的前端开发面试题及答案,希望能够帮助到大家。

  前端开发面试题及答案 1

  1、对Web标准以及W3C的理解与认识?

  答:标签闭合、标签小写、不乱嵌套、提高搜索机器人搜索几率、使用外链CSS和JS脚本、结构行为表现的分离、文件下载与页面速度更快、内容能被更多的用户所访问、内容能被更广泛的设备所访问、更少的代码和组件、容易维护、改版方便,不需要变动页面内容、提供打印版本而水需要复制内容、提高网站易用性。

  2、XHTML和HTML有什么区别?

  答:HTML是一种基本的WEB网页设计语言,XHTML是一个基于XML的置标语言 最主要的不同:

  XHTML元素必须被正确地嵌套;

  XHTML元素必须被关闭;

  标签名必须用小写字母;

  XHTML文档必须拥有根元素。

  3、Doctype?严格模式与混杂模式-如何触发这两种模式,区分它们有何意义? 答:Doctype用于声明文档使用哪种规范(HTML/XHTML)

  该标签可声明三种DTD类型,分别为严格版本、过度版本以及基于框架的HTML文档。

  加入XML声明可触发,解析方式更改为IE5.5拥有IE5.5的bug。

  4、行内元素有哪些?块级元素有哪些?CSS的盒模型?

  答:行内元素:a b br i span input select

  块级元素:div p h1 h2 h3 h4 form ul

  CSS盒模型:内容,border margin padding

  5、CSS引入的方式有哪些?link和@import的区别是?

  答:方式:内联 内嵌 外链 导入

  区别:同时加载

  前者无兼容性,后者CSS2.1以下浏览器不支持

  Link支持使用javascript 改变样式,后者不可。

  6.CSS选择符有哪些?哪些属性可以继承?优先级算法如何计算?内联和important哪个优先级高?

  答:标签选择符、类选择符、id选择符

  继承不如指定 id>class>标签选择

  后者优先级高

  7、前端页面有哪三层构成,分别是什么?作用是什么?

  答:结构层HTML 表示层CSS 行为层JS

  8、你做的页面在哪些浏览器测试过?这些浏览器的内核分别是什么? 答:Ie(Ie内核)

  火狐(Gecko)

  谷歌(webkit)

  opear(Presto)

  9、img标签上title与 alt属性的区别是什么?

  答:Alt当图片不显示时,用文字代表

  Title为该属性提供信息。

  10、描述CSS Reset的作用和用途

  答:Reset重置浏览器的CSS默认属性 浏览器的品种不同,样式不同,然后重

  置,让他们统一。

  11、http状态码有那些?分别代表是什么意思?

  100-199 用于指定客户端应响应的某些动作。

  200-299 用于表示请求成功。

  300-399 用于已经移动的文件并且常被包含在定位头信息中指定新的地址信息。 400-499 用于指出客户端的错误。

  400 语义有误,当前请求无法被服务器理解。

  401 当前请求需要用户验证

  403 服务器已经理解请求,但是拒绝执行它。

  500-599 用于支持服务器错误。

  503 – 服务不可用

  13.解释css sprites,如何使用。

  Css 精灵 把一堆小的图片整合到一张大的图片上,减轻服务器对图片的请求数量

  14.浏览器标准模式和怪异模式之间的区别是什么?

  盒子模型 渲染模式的不同

  使用 window.top.document.compatMode 可显示为什么模式

  15.你如何对网站的文件和资源进行优化?期待的解决方案包括:

  文件合并

  文件最小化/文件压缩

  使用CDN托管

  缓存的使用

  16.什么是语义化的HTML?

  直观的认识标签 对于搜索引擎的抓取有好处

  17.清除浮动的几种方式,各自的优缺点

  1.使用空标签清除浮动 clear:both(理论上能清楚任何标签,增加无意义的标签)

  2.使用overflow:auto(空标签元素清除浮动而不得不增加无意代码的弊端,,使用zoom:1用于兼容IE)

  3.是用afert伪元素清除浮动(用于非IE浏览器)

  18.css hack

  _marging \IE 6

  +margin \IE 7

  Marging:0 auto 9 所有Ie

  Margin \IE 8

  前端开发面试题之Javascript部分

  1.javascript的`typeof返回哪些数据类型

  Object number function boolean underfind

  2.例举3种强制类型转换和2种隐式类型转换?

  强制(parseInt,parseFloat,number)

  隐式(== – ===)

  3.split() join() 的区别

  前者是切割成数组的形式,后者是将数组转换成字符串

  4.数组方法pop() push() unshift() shift()

  Push()尾部添加 pop()尾部删除

  Unshift()头部添加 shift()头部删除

  5.事件绑定和普通事件有什么区别

  6.IE和DOM事件流的区别

  1.执行顺序不一样、

  2.参数不一样

  3.事件加不加on

  4.this指向问题

  7.IE和标准下有哪些兼容性的写法

  Var ev = ev || window.event

  document.documentElement.clientWidth || document.body.clientWidth

  Var target = ev.srcElement||ev.target

  8.ajax请求的时候get 和post方式的区别

  一个在url后面 一个放在虚拟载体里面

  有大小限制

  安全问题

  应用不同 一个是论坛等只需要请求的,一个是类似修改密码的

  9.call和apply的区别

  Object.call(this,obj1,obj2,obj3)

  Object.apply(this,arguments)

  10.ajax请求时,如何解释json数据

  使用eval parse 鉴于安全性考虑 使用parse更靠谱

  11.b继承a的方法

  12.JavaScript this指针、闭包、作用域

  13.事件委托是什么

  让利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行!

  14.闭包是什么,有什么特性,对页面有什么影响

  闭包就是能够读取其他函数内部变量的函数。

  15.如何阻止事件冒泡和默认事件

  canceBubble return false

  16.添加 删除 替换 插入到某个接点的方法

  obj.appendChidl()

  obj.innersetBefore

  obj.replaceChild

  obj.removeChild

  17.解释jsonp的原理,以及为什么不是真正的ajax

  动态创建script标签,回调函数

  Ajax是页面无刷新请求数据操作

  18.javascript的本地对象,内置对象和宿主对象

  本地对象为array obj regexp等可以new实例化

  内置对象为gload Math 等不可以实例化的

  宿主为浏览器自带的document,window 等

  19.document load 和document ready的区别

  Document.onload 是在结构和样式加载完才执行js

  Document.ready原生种没有这个方法,jquery中有 $().ready(function)

  20.”==”和“===”的不同

  前者会自动转换类型

  后者不会

  21.javascript的同源策略

  一段脚本只能读取来自于同一来源的窗口和文档的属性,这里的同一来源指的是主机名、协议和端口号的组合

  前端开发面试题及答案 2

  1、Doctype作用?严格模式与混杂模式如何区分?它们有何意义?

  (1)、声明位于文档中的最前面,处于标签之前。告知浏览器的解析器,用什么文档类型规范来解析这个文档。

  (2)、严格模式的排版和JS运作模式是以该浏览器支持的最高标准运行。

  (3)、在混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作。

  (4)、DOCTYPE不存在或格式不正确会导致文档以混杂模式呈现。

  2、行内元素有哪些?块级元素有哪些?

  (1)CSS规范规定,每个元素都有display属性,确定该元素的类型,每个元素都有默认的display值,比如div默认display属性值为“block”,成为“块级”元素;span默认display属性值为“inline”,是“行内”元素。

  (2)行内元素有:a b span img input select strong(强调的语气)块级元素有:div ulol li dl dtdd h1 h2 h3 h4…p

  3、link和@import的区别是?

  (1)link属于XHTML标签,而@import是CSS提供的;

  (2)页面被加载的时,link会同时被加载,而@import引用的CSS会等到页面被加载完再加载;

  (3)import只在IE5以上才能识别,而link是XHTML标签,无兼容问题;

  (4)link方式的样式的权重高于@import的权重。

  4、浏览器的内核分别是什么?

  IE浏览器的内核Trident、Mozilla的Gecko、Chrome的Blink(WebKit的分支)、Opera内核原为Presto,现为Blink;

  5、HTML5有哪些新特性?如何处理HTML5新标签的浏览器兼容问题?如何区分HTML和HTML5?

  HTML5现在已经不是SGML的子集,主要是关于图像,位置,存储,多任务等功能的增加。

  绘画canvas用于媒介回放的video和audio元素本地离线存储localStorage长期存储数据,浏览器关闭后数据不丢失;sessionStorage的数据在浏览器关闭后自动删语意化更好的内容元素,比如article、footer、header、nav、section表单控件,calendar、date、time、email、url、search新的技术webworker,websockt,Geolocation

  6、对语义化如何理解?

  (1)import只在IE5以上才能识别,而link是XHTML标签,无兼容问题;

  (2)link方式的样式的权重高于@import的权重。

  4、浏览器的内核分别是什么?

  IE浏览器的内核Trident、Mozilla的Gecko、Chrome的Blink(WebKit的分支)、Opera内核原为Presto,现为Blink;

  5、HTML5有哪些新特性?如何处理HTML5新标签的浏览器兼容问题?如何区分HTML和HTML5?

  HTML5现在已经不是SGML的子集,主要是关于图像,位置,存储,多任务等功能的增加。

  绘画canvas用于媒介回放的video和audio元素本地离线存储localStorage长期存储数据,浏览器关闭后数据不丢失;sessionStorage的数据在浏览器关闭后自动删语意化更好的内容元素,比如article、footer、header、nav、section表单控件,calendar、date、time、email、url、search新的技术webworker,websockt,Geolocation

  6、对语义化如何理解?

  (3)import只在IE5以上才能识别,而link是XHTML标签,无兼容问题;

  (4)link方式的样式的权重高于@import的权重。

  4、浏览器的'内核分别是什么?

  IE浏览器的内核Trident、Mozilla的Gecko、Chrome的Blink(WebKit的分支)、Opera内核原为Presto,现为Blink;

  5、HTML5有哪些新特性?如何处理HTML5新标签的浏览器兼容问题?如何区分HTML和HTML5?

  HTML5现在已经不是SGML的子集,主要是关于图像,位置,存储,多任务等功能的增加。

  绘画canvas用于媒介回放的video和audio元素本地离线存储localStorage长期存储数据,浏览器关闭后数据不丢失;sessionStorage的数据在浏览器关闭后自动删语意化更好的内容元素,比如article、footer、header、nav、section表单控件,calendar、date、time、email、url、search新的技术webworker,websockt,Geolocation

  6、对语义化如何理解?

  用正确的标签做正确的事情!

  HTML语义化就是让页面的内容结构化,便于对浏览器、搜索引擎解析;在没有样式CCS情况下也以一种文档格式显示,并且是容易阅读的。搜索引擎的爬虫依赖于标记来确定上下文和各个关键字的权重,利于SEO。使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。

  7、HTML5的离线储存有几种方式?

  localStorage长期存储数据,浏览器关闭后数据不丢失;sessionStorage数据在浏览器关闭后自动删除。

  8、iframe有那些缺点?

  iframe会阻塞主页面的Onload事件;

  iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。使用iframe之前需要考虑这两个缺点。如果需要使用iframe,最好是通过javascript动态给iframe添加src属性值,这样可以可以绕开以上两个问题。

  9、请描述一下cookies,sessionStorage和localStorage的区别?

  cookie在浏览器和服务器间来回传递。sessionStorage和localStorage不会sessionStorage和localStorage的存储空间更大;sessionStorage和localStorage有更多丰富易用的接口;sessionStorage和localStorage各自独立的存储空间;

  • 相关推荐

【前端开发面试题及答案】相关文章:

web前端面试题及答案05-12

前端开发工作总结10-02

前端开发岗位职责06-09

web前端开发实习报告优秀03-07

前端开发个人简历02-07

前端开发岗岗位职责04-25

游戏前端开发岗位职责05-12

前端开发岗位职责(精选27篇)07-10

前端开发工程师的工作职责03-30

前端开发工作总结10篇06-30