BOM是全部JavaScript的核心,全部的功能其实都创建在BOM基础之上。各浏览器提供的BOM的功能存在很大差别,BOM在HTML5中已经有很大一部分被放入了标准。javascript
主要管理地址栏中的信息:css
console.log(window.location === document.location); //true
管理浏览器的信息
好比:vue
navigator.plugins //返回插件数组 navigator.cookieEnabled //true navigator.userAgent //"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36"
详细属性参考:
https://developer.mozilla.org/zh-CN/docs/Web/API/Window/navigatorjava
管理显示器相关信息,好比屏幕分辨率
使用最多的是做为media query时react
@media screen and (max-width: 980px) {}
管理浏览器的访问历史记录
常见使用场景: 如react-route或vue-route中的Browser类型,在浏览器中就基于hisotry对象编程
原生JavaScript和DOM编程不在这里细说
针对DOM一直都有持续性的扩展,好比:数组