window对象
window对象是一个全局对象,也可以说是JavaScript中的顶级对象
BOM(浏览器对象模型)
所有通过var定义在全局作用域中的变量、函数都会变成window对象的属性和方法
定时器-延时函数
属性名:setTimeout
语法:setTimeout(回调函数,等待的毫秒数)
清楚延时函数:
let timer = setTimeont(回调函数,等待的毫秒数)
clearTimeout(timer)
JavaScript执行机制
JavaScript语言的一大特点就是单线程,即同一时间只能做一件事
- 同步:前一个任务结束后再执行后一个任务,程序的执行顺序与任务的排列顺序是一致的、同步的
- 同步任务:在主线程上执行,形成一个执行线
- 异步:做某件事时,还去处理其他事情
- 异步任务:通过回调函数实现
1.普通事件,如click、resize
2.资源加载,如load、error
3.定时器,包括setInterval、setTimeout
异步任务相关添加到任务队列中
执行顺序:
1.先执行执行栈中的同步任务
2.异步任务放入任务队列中
3.一旦执行栈中的所有同步任务执行完毕,系统就会按次序读取任务队列中异步任务
由于主线程不断的重复获得任务、执行任务、再获取任务、再执行、所以这种机制被称为事件循环(event loop)
location对象
location的数据类型是对象,它拆分并保存了URL地址的各个组成部分
常用属性和方法:
- 属性名:href
获取完整的URL地址,对其赋值时用于地址的跳转 - 属性名:search
获取地址中携带的参数,符号?后面部分 - 属性名:hash
获取地址中的哈希值,符号#后面部分 - 方法名:reload
用来刷新当前页面,传入参数true时表示强制刷新
navigator对象
navigator的数据类型是对象,该对象下记录了浏览器自身的相关信息
常用属性和方法:
- 属性名:userAgent
检测浏览器的版本及平台
history对象
history的数据类型是对象,主要管理历史记录,该对象与浏览器地址栏的操作相对应,如前进、后退、历史记录等
常用属性和方法:
- 方法名:back
后退功能 - 方法名:forward
前进功能 - 方法名:go(参数)
前进后退功能,参数为正数就前进,为负数就后退