API 一个程序提供给另一个程序 对本程序进行控制 。

BOM让JS直接对浏览器本身进行操作。

DOM 让JS可以操作html元素。

BOM的五个对象

window

  • 定义:window是JS在浏览器环境中的全局变量
  • 函数就是window的方法
  • 全局变量就是window的属性

属性

  • document
  • location
  • history
  • screen
  • navigator
  • innerWidth 文档区域宽度
  • innerHeight 文档区域高度
  • outerWidth 窗口区域的宽度
    *outerHeight 窗口区域的高度
  • name 窗口名字
  • parent 父窗口
  • top 顶层窗口
  • length 子窗口的数量
  • frames 子窗口的集合

方法

  • alert() 警告框
  • confirm() 确认框
  • prompt 可输入框
  • setInterval()
  • setTimeut()
  • clearInterval()
  • clearTimeout()
  • open() 打开一个新的浏览器窗口或查找一个已命名的窗口
    *close() 关闭浏览器窗口
    *print() 打印当前窗口内容
  • scrollBy() 两个值 X,Y 水平方向和垂直方向

Location

属性

  • href 设置或返回完整的URL
  • protocol 设置或返回当前URL的协议
  • host 设置或返回主机名和当前URL的端口号
  • hostname 设置或返回当前URL的主机名
  • port 设置或返回当前URL的端口号
  • pathname 文件路径
  • search 查询部分
  • hash 锚点部分

方法

  • reload() 重新加载当前文档
  • assign() 加载新的文档 历史会被保存
  • replace() 加载新的文档 历史不会被保存

History(历史记录)

属性

  • length 历史记录的数量

方法

  • back() 后退一步
    *forward() 前进一步
    *for(n) 前进/后退N步 负数后退 正数前进

screen (屏幕)

属性

  • width (屏幕宽度)
    *height (屏幕高度)

属性

  • userAgent 平台、浏览器相关的信息
  • platform 平台

浏览器内核

  • 内核应该包括 渲染引擎/JS引擎
  • 渲染引擎负责渲染HTML和CSS,JS引擎负责运行JS
  • 现在提到浏览器内核也可以单指渲染引擎

常见浏览器内核

  • webkit (chrome safari)
  • blink (webkit的改型 , chrome、opera)
    *trident IE
    *Gecko Firefox
    *Kestrel 老欧鹏