JavaScript BOM和DOM

Browser Object Model

BOM是全部JavaScript的核心,全部的功能其實都創建在BOM基礎之上。各瀏覽器提供的BOM的功能存在很大差別,BOM在HTML5中已經有很大一部分被放入了標準。javascript

Window對象

  • window對象表明全局做用域。
  • 若是頁面包括frame,則每一個frame都有本身的window對象。
  • window.open()能夠打開新的窗口(或tab頁)

location對象

主要管理地址欄中的信息: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

screen對象

管理顯示器相關信息,好比屏幕分辨率
使用最多的是做爲media query時react

@media screen and (max-width: 980px)
{}

history對象

管理瀏覽器的訪問歷史記錄
常見使用場景: 如react-route或vue-route中的Browser類型,在瀏覽器中就基於hisotry對象編程

Document Object Model

節點類型

  • Node類型
  • Document類型
  • Element類型
  • Attr類型
  • Text類型
  • Comment類型
  • CDATASection類型
  • DocumentTYpe類型
  • DOcumentFragment類型

DOM操做

原生JavaScript和DOM編程不在這裏細說
針對DOM一直都有持續性的擴展,好比:數組

  • API的擴展
  • HTML5的擴展
  • DOM2和DOM3擴展(包括DOM操做函數,樣式,遍歷等)
相關文章
相關標籤/搜索