09.js基础知识-BOM对象

BOM浏览器对象模型

  • 能够说出什么是BOM
  • 能够知道浏览器的*对象window
  • 能够写出页面加载事件以及注意事项
  • 能够写出两种定时器函数并说出区别
  • 能够说出JS执行机制
  • 能够使用location对象完成页面之间的跳转
  • 能够知晓navigator对象涉及的属性
  • 能够使用history提供的方法实现页面刷新

1.BOM概述

BOM是浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,核心对象是window;BOM学习的是浏览器窗口交互的一些对象

2.window对象的常见事件

window.onload = function(){}新的方法:window.addEventListener("load",function(){})

如果页面中图片比较多,建议用DOMCtentLoaded事件,这个事件等DOM加载完毕,不等图片css就可以执行

调整窗口大小:window.onresize当窗口大小发生变化时就会触发这个事件

window.innerWidth获得当前尺寸的宽度;

3.两种定时器

window.setTimeout(调用函数,【延迟的毫秒数】)

回调函数callback

停止定时器:clearTimeout()

setInterval(回调函数,【间隔的毫秒数】);这个方法重复调用一个函数,每隔这个时间,就去调用一次回调函数

停止定时器操作:clearIterval()

this指向问题:1.在全局作用域或普通函数中this指向全局对象window()注意定时器里面的this指向window

2.方法调用中谁调用This指向谁

3.构造函数中This指向构造函数的实例

4.js执行队列

js是单线程的,h5提出了Web Worker标准,允许js脚本创建多个线程,于是有了同步和异步

同步任务都在主线程上执行,形成一个执行栈

js异步任务是通过回调函数实现的。一般而言:异步任务有以下三种类型:1.普通事件:如click,resize;2.资源加载:load,error;3.定时器:setInterval,setTimeout异步任务相关回调函数添加到任务队列中

异步进程处理:如果还没有点击先放入异步进程处理,等点击了再调用

由于主线程不断的重复获得任务,执行任务,再获取任务,再执行,所以这种机制被称为事件循环

5.location对象

location对象给我们提供了一个location属性用于获取或设置窗体的URL统一资源定位符,并且可以用于解析URL。

location.href获取或者设置整个URL;location.search返回参数

6.navigator对象

知晓浏览器用了哪个浏览器,手机还是电脑

7.history对象

back()后退功能;forward()前进界面;go(参数)

上一篇:前端下载excel


下一篇:移动端中通过js动态设置字体大小