一、BOM概述
BOM即浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是window
BOM缺乏标准,JavaScript语法标准化组织是ECMA,DOM标准化组织是W3C,BOM最初是Netscape浏览器标准的一部分

2、BOM构成
BOM 比DOM大,它包含DOM

window 对象是浏览器的顶级对象,它具有双重角色
1、它是JS 访问浏览器窗口的一个接口
2、他是一个全局对象。定义在全局作用域中的变量、函数都会变成window对象的属性和方法
在调用时可以省略window,前面学习的对话框都都属于window对象方法,如alert()、prompt()等
注意:window下的一个特殊属性 window.name
二、window 对象的常见事件
1、窗口加载事件

window.onload 是窗口(页面)加载事件,当文档内容全部加载完成会触发该事件(包括图像,脚本文件、css文件等),就调用的处理函数。
注意:
1、有了window.onload 就可以把JS代码写到页面元素的上方,因为onload 是等页面内容全部加载
完毕,再去执行处理函数。
2、window.onload 传统注册事件方式只能写一次,如果有多个,会以最后一个window.onload 为准。
3、如果使用addEventListener 则没有限制

2、调整窗口大小事件
三、定时器
1、setTimeout( )定时器


5秒后自动关闭的广告
3、停止 setTimeout()计时器
4、setLnterval()定时器
setTimeout 延迟时间到了,就去调用这个函数,只调用一次,就结束了这个定时器
setInterval 每隔这个延时时间,就去调用这个回调函数,会调用很多次,重复调用这个函数
倒计时案例

5、停止 setInterval()定时器
发送短信案例
6、this
this 的指向在函数定义的时候是确定不了的,只有函数执行时候才能确定this到底指向谁,一般情况下this 的最终指向的是那个调用它的对象
1、全局作用域或者普通函数中this指向全局对象window(注意定时器里面的this指向window)
2、方法调用中谁调用this指向谁
3、构造函数中this指向的是实例对象
四、JS 执行机制
1、JS 是单线程

2、同步和异步

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

异步任务相关回调函数添加到任务队列(消息队列)中
3、JS 执行机制
1、先执行执行栈中的同步任务
2、异步任务(回调函数)放入任务队列中
3、一旦执行栈中所有的同步任务执行完毕,系统就会按照次序读取任务队列中的异步任务,于是被读取的异步任务结束等待状态,进入执行栈开始执行。

五、location 对象
1、什么是location对象
window对象给我们提供了一个location 属性用于获取或设置窗体的URL,并且可以用于解析URL。因为这个属性返回的是一个对象,所以我们将这个属性也称为location对象
2、URL
统一资源定位符
是互联网上标准资源的地址,互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件
的位置以及浏览器应该怎样处理它。

3、location 对象属性

href 和 search
5秒后跳转页面案例

获取URL参数

4、location 对象的方法

六、navigator 对象

七、history 对象
与浏览器历史记录进行交互。该对象包含用户(在浏览器窗口中)访问过的URL











843

被折叠的 条评论
为什么被折叠?



