前几天面试,在做笔试题的时候遇到了题目为“列出并简述dom对象及其常用方法(每种对象写出一个即可),例如:location对象,常用方法有
href:获得当前地址。
”的面试题,当时有点懵逼;总想着题目好像不太对,但是自己对这方面的基础打得不牢,准备亦不足,没有敢点明题目错误之处。回家查询资料后发现的确题目的“dom对象”应该是改为“bom对象”,再此重新复习一遍BOM的最基本概念与知识(也警示下自己之前对于最基本的概念掌握的忽视,导致笔试题被“鄙视”的杯具)。
一、BOM对象:浏览器对象模型,用来操作和访问浏览器窗口,使JavaScript有能力与浏览器“对话”。
二、BOM架构模式图:
三、BOM所分成的六个对象:
1.window对象:表示浏览器窗口,所有js全局对象、函数以及变量均自动成为window对象的成员。
a.常用方法1:window.setTimeout(exp,time); //设置一次性定时器时间(clearTimeout(tID)可以清除设置)。
b.常用方法2:window.setInterval(exp,time); //设置周期定时器时间(clearInterval(tID)可以清除设置)。
2.document对象:窗口中显示的html文档对象;
a.常用方法1:document.getElementById(idString); //凭idString在dom取得该元素节点。
b.常用方法2:document.createElement(elementName); // 创建elementName类型的元素节点。
3.history对象:浏览过的窗口的历史记录对象;
a.常用方法1:history.back(); //等于单机浏览器“后退”按钮。
b.常用方法2:history.forward(); //等于单机浏览器“前进”按钮。
c.常用方法3:history.go(num); //等于单机浏览器“后退”按钮num次。
4.location对象:窗口文件地址对象;
a.常用属性1:location.href; //记录当前的页面。
b.常用方法1:location.reload(); //重新载入当前网址。
5.screen对象:当前屏幕对象;
a.常用属性1:screen.width; //当前屏幕宽。
b.常用属性2:screen.height; //当前屏幕高。
6.navigator对象:浏览器信息;
a.常用属性1:navigator.userAgent; //获取用户浏览器的信息
b.常用属性2:navigator.cookieEnabled; //客户端(浏览器)是否允许使用cookie