目录
谈一谈 null 和 undefined
- Undefined 类型只有一个值,即 undefined。我们不会对一个值设置 undefined,一般都是出现错误的时候,才会被我们打印出来。
- null 类型是第二个只有一个值的数据类型,这个特殊的值是 null,null 值表示一个空对象指针,而这也正是使用 typeof 操作符检测null时会返回"object"的原因。
undefined出现的场景:
- 变量被声明了,但没有赋值时,就等于 undefined。
- 调用函数时,应该提供的参数没有提供,该参数等于 undefined。
- 对象没有赋值的属性,该属性的值为 undefined。
- 函数没有返回值时,默认返回 undefined。
null出现的场景:
- 作为函数的参数,表示该函数的参数不是对象。
- 作为对象原型链的终点。
- 如果定义的变量准备在将来用于保存对象,那么最好将该变量初始化为 null 而不是其他值。
- 将一个对象变为垃圾对象的时候,设置变量的值为 null。
什么是DOM?
- DOM document object model 文档对象模型。
- 是 W3C 指定的一套规范,规定了 js 脚本如何和 HTML 进行交互。
- DOM 规定了一系列的标准的接口,允许开发人员使用标准的方式操作网页的结构、内容、样式和行为。
什么是节点?节点类型有哪些?
- 在网页中 所有的内容和对象 都被称作为节点。
- 节点是文档的最基本的组成单元,并且节点有很多的类型,并组成了完整的 DOM 树结构。
- 常见节点:比如 元素节点 属性节点 文档节点 注释节点 文本节点等等。
说出获取元素所有的方式
- 通过标签名获取 是一个集合: getElementsByTagName(“元素名”)。
- 通过 id 获取 单个元素: + getElementById(“元素名”)。
- 通过类名获取是一个集合: + getElementsByClassName(“元素名”)。
- selectors API:使用css选择器的方式选择元素。
- querySelector(“选择器”) 单个元素
- querySelectorAll(“选择器”) 一个集合(nodeList对象)
- 新旧方法的区别:
- 新方法获取的元素是静态的。
- 旧方法获取的元素是动态的。
- 静态/动态:获取的元素集合是否跟随节点的改变而改变。
获取html body head标签的方法
- js 提供了获取 html body head 的简便方法。
- document.body: 获取 body 元素。
- documemt.head:获取 head 元素
- document.documentElement:获取 html 元素
兼容性获取第一个子元素的封装
function getFirstChild(obj) {
return obj.firstElementChild || obj.firstChild;
}
高频面试题
此链接为CSDN内部链接,我收集整理的一些经常会问到的前端面试题,希望能对您所有帮助!