前端面经知识点总结1

HTML

  • 对 DIV, Table 布局的理解
  • 语义化的HTML理解
  • 对HTML5的理解
  • 对doctype的理解

其余都很简单,我主要说说对doctype的理解,以前熟悉个大概,可是本身感受没有表达清楚。css

<!DOCTYPE>处于<html>标签以前,此标签可告知浏览器文档使用哪一种HTMLXHTML规范。
该标签可声明三种DTD类型,分别表示严格版本过渡版本以及基于框架的HTML版本(假如文档中的标记不遵循doctype声明所指定的DTD,这个文档除了不能经过代码校验以外,还有可能没法在浏览器中正确显示。)html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

解析:在上面的声明中,声明了文档的根元素是 html,它在公共标识符被定义为 “-//W3C//DTD XHTML 1.0 Strict//EN”DTD 中进行了定义。浏览器将明白如何寻找匹配此公共标识符的 DTD。若是找不到,浏览器将使用公共标识符后面的 URL 做为寻找 DTD 的位置。前端

  • : 表示组织名称未注册。Internet 工程任务组(IETF)和万维网协会(W3C)并不是注册的 ISO 组织。+为默认,表示组织名称已注册。
  • DTD : 指定公开文本类,即所引用的对象类型。 默认为DTD(document type definition)。
  • HTML:指定公开文本描述,即对所引用的公开文本的惟一描述性名称。后面可附带版本号。默认为HTML。
  • URL:指定所引用对象的位置。
  • Strict:排除全部 W3C 专家但愿逐步淘汰的表明性属性和元素。

三种HTML文档类型面试

HTML 4.01 规定了三种文档类型:Strict、Transitional 以及 Frameset正则表达式

  • Strict:算法

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" " http://www.w3.org/TR/html4/strict.dtd">

若是须要干净的标记,免于表现层的混乱,用HTML Strict DTD类型。前端工程化

  • Transitional:浏览器

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " http://www.w3.org/TR/html4/loose.dtd">

Transitional DTD 可包含 W3C 所指望移入样式表的呈现属性和元素. 若是用户使用了不支持层叠样式表(CSS)的浏览器以致于你不得不使用 HTML 的呈现特性时,用 Transitional DTD 类型数据结构

  • Frameset:闭包

    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" " http://www.w3.org/TR/html4/frameset.dtd">

Frameset DTD 被用于带有框架的文档。除 frameset 元素取代了 body 元素以外,Frameset DTD 等同于 Transitional DTD

三种 XML 文档类型:

  • Strict
  • Transitional
  • Frameset
    XHTML 1就是HTML 4.01的XML化,是一种不向前兼容的格式。
  • 最新的 HTML5的doctype 不须要对DTD引用。

CSS

  • 盒子模型的理解
  • box-sizing的理解
  • positon的理解
  • 如何清除浮动
  • 选择器的权重
  • 实现上下做用居中的几种方法
  • css的解析顺序,link 引入 与import引入的区别

我主要说一下最后一个问题。

css的解析顺序 是从右往左的,这点很是重要,能够主导你写出快速选择的高效的css选择器。
link引入的按照顺序同步加载的而@import引入的css须要等待页面加载完成才会加载,是异步的。

JS

js问的问题比较多,我只能回忆一些部份内容

  • 闭包的理解,及运用的一些问题
  • 原型链理解
  • 事件冒泡理解
  • 函数声明,变量提高一些问题
  • 正则表达式的运用
  • 实现深拷贝的功能。有不少方法,最简单的是Object.create()。其余方法参见以前的博客
  • 用原生js实现Jquery的链式操做。最简单的方式在每一个方法里return this,其余的可参照Jquery,underscore的实现方法。
  • Cookie, SessionStorage, Localstorage区别及运用
  • 多种方法实现继承。(红宝书里有详细说明,最经典的实现方式是原型,而后还有组合继承,寄生式继承,寄生组合式继承)
  • 轮询,长链接,实时通信的理解

其余

  • SEO了解吗
  • img 的 alt 跟 title区别(alt是当图片不存在时的替代文字,爬虫读的属性;title是对图片的描述与进一步说明,也就是鼠标移动上去显示的文字)
    -HTTP 的头部了解(我只能说出大概,有时间买呗HTTP的书籍好好研究研究)
  • 前端如何优化(雅虎36条军规)
  • 一些状态码了解
  • XSS,CSRF了解吗,如何防范
  • 对前端工程化的了解
  • 对当前流行的MVVM框架原理了解吗
  • 算法数据结构熟悉吗

总结

总之不少面试考察的都是基础,整体面试还不错,关于 HTTP 以及 算法,MVVM的原理,正则等这些问题还要好好学习研究

相关文章
相关标签/搜索