前端开发面试问问题2

161 阅读2分钟
  1. 常用浏览器内核有哪些?
  • IE浏览器内核:Trident内核,也是俗称的IE内核;
  • Chrome浏览器内核:统称为Chromium内核或Chrome内核,以前是Webkit内核,现在是Blink内核;
  • Firefox浏览器内核:Gecko内核,俗称Firefox内核;
  • Safari浏览器内核:Webkit内核;
  1. 行内元素和块元素的区别?
  • 行内元素不会换行,一条直线水平方向排列
  • 块级元素独占一行,垂直方向排列
  • ★块级元素可以包含内行元素和块级元素,内行元素不行
  • 内行元素设置宽高无效,但是可以设置行高(line-height) 外边距(margin),内边距(padding)设置上下无效,体现在盒子模型
  1. 常用清除浮动有哪些方法?
  • 空标记清除浮动:在浮动标记之后添加空标记,并对该标记应用“clear: both”样式,空标记可以是<div>,<p>等任何标签
  • 使用 overflow属性清除浮动
  • 使用after伪对象清除浮动:必须要为伪对象设置height:0px和content:''值为空的样式
  1. 如何理解JavaScript中的this?
  • this 就是一个指针,指向我们调用函数的对象
  • 谁调用就是谁的
  1. 原始数据类型和引用数据类型的区别? 原始数据类型即基本数据类型
  • 基本数据类型:Number(数字类型)String(字符串类型) Boolean(布尔值类型) Null(空值类型) Undefine(未定义类型)

  • 引用数据类型:Object(对象类型),Array(数组类型),Function(函数类型) 区别: 存储位置不同

  • 基本数据类型存储在栈中,占用空间小,大小固定,属于频繁使用数据

  • 引用数据类型存储在堆中,占据空间大,大小不固定

  • (★栈是内存存储的地址)

  • (★堆是内存存储的内容) 传值方式不同

  • 基本数据类型按值传递,无法改变一个基本数据类型的值

  • 引用数据类型按引用传递,引用值可改变