BOM即浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是window。
BOM由一系列相关的对象构成,并且每个对象提供了很多方法和属性。
BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C,BOM最初值是Netscape浏览器标准的一部分。
DOM | BOM |
文档对象模型 | 浏览器对象模型 |
DOM就是把文档当做一个对象来看待 | 把浏览器当做一个对象来看待 |
DOM顶级对象是document | BOM顶级对象是window |
学习操作页面元素 | 学习浏览器交互的一些对象 |
W3C标准规范 | 浏览器厂商在各自浏览器上定义的,兼容性较差 |
BOM比DOM大,它包含DOM。
BOM的构成:
window | ||||
document | location | navigation | screen | history |
window对象是浏览器的顶级对象,它具有双层角色。
1.它是js访问浏览器窗口的一个接口。
2.它是一个全局对象。定义在全局作用域中的变量,函数都会变成window对象的属性和方法。调用时可以省略window。前面学习的对话框都属于window对象方法,如alert(),prompt()等.
注意window的一个特殊属性window.name。
比如:
var num = 1;
console.log(num); //之前我们用这样的方式找到num的值
console.log(window.num); //现在我们用这样的方式也可以
var fn = function() {
console.log(11);
}
fn(); //这两种均可
window.fn();