美文网首页
前端面试必备知识

前端面试必备知识

作者: b94618a7a3da | 来源:发表于2018-02-23 02:23 被阅读0次

    HTML5/CSS

    1.每个HTML文件里开头都有个很重要的东西, Doctype, 知道这是干什么的吗?

    2.div+css的布局较table布局有什么优点?

    3.strong与em的异同?

    4.你能描述一下

    5.渐进增强和优雅降级之间的不同吗?

    6.为什么利用多个域名来存储网站资源会更有效?

    7.请描述一下cookies, sessionStorage和localStorage的区别?

    8.简述一下src与href的区别。

    9.你如何理解HTML结构的语义化?


    CSS

    1.有哪项方式可以对一个DOM设置它的CSS样式?

    2.CSS都有哪些选择器?

    3.CSS选择器的优先级是怎么样定义的?

    4.CSS中可以通过哪些属性定义, 使得一个DOM元素不显示在浏览器可视范围内?

    5.链接访问过后hover样式就不出现的问题是什么?如何解决?

    6.行内元素和块级元素的具体区别是什么?行内元素的padding和margin可设置吗?

    7.css中可以让文字在垂直和水平方向上重叠的两个属性是什么?

    8.px和em的区别。

    9.描述一个”reset”的CSS文件并如何使用它。

    10.知道normalize.css吗?你了解他们的不同之处?


    JavaScript面试题

    JavaScript面试的题目, 主要考察的内容还是逻辑性为主。 基础的部分, 主要是对内置函数的使用, 比如String, Math, Array对象。 还有一个比较讨面试喜欢的, 就是正则表达式。

    作用域链:JS核心部分需要理解的一个重要部分。

    闭包

    原始对象

    var a = 1;

    a.a = 2;

    console.log(a.a);

    这一题需要理解的是点的作用, 在JS解释器中, 首先会判断左侧的变量是什么类型, 如果是普通对象, 会创建一个新的对象作用域, 然后挂载a属性。 console.log部分的a也是又创建了一个封装对象, 但是这个对象下面的a是没有赋值的。


    引用类型

    var a = {n:1};

    var b = a;

    a.x = a = {n:2};

    alert(a.x);// --> undefined

    alert(b.x);// --> [object Object]

    这个涉及到了连续赋值的情况, 详情参考javascript 连等赋值问题.在程序运行到之后, 先确定好了 a.x 和 a 的引用, 再从右往左开始赋值的。 还有一点就是可以理解的是 . 运算优先级高于 = 运算符, 所以会先创建 a.x 对象, 然后在执行赋值过程。赋值顺序从右向左。


    原型链

    JS核心部分的另一个需要理解的重要部分

    类型转换

    比较时候的转换的原则:

    一个是number一个是string时, 会尝试将string转换为number

    尝试将boolean转换为number, 0或1

    尝试将Object转换成number或string, 取决于另外一个对比量的类型

    运算过程的转换原则:

    字符串与数字相加,变成字符串

    字符串与数字相减, 变成数字

    相关文章

      网友评论

          本文标题:前端面试必备知识

          本文链接:https://www.haomeiwen.com/subject/qdqtxftx.html