BOM(浏览器对象模型)
BOM
1.
navigator:能够清楚的知道浏览器的相关信息
location:浏览器自动跳转页面
history:可以让浏览器前进与后退以及刷新
screen:得到屏幕的信息
2.window是浏览器内置中的全局对象
3.document是实现DOM的基础,它其实是依附于window的属性
4.依附于window对象的所有属性和方法,使用时可以省略window
定时器-延时函数
定时器-延时函数
1.JavaScript内置的一个用来让代码延迟执行的函数,叫setTimeout
2.语法:
setTimeout(回调函数,等待的毫秒数)
3.setTimeout仅仅只执行一次,所以可以理解为就是把一段代码延迟执行,平时省略window
let timer=setTimeout(回调函数,等待的毫秒数)
clearTimeout(timer)
拓展_递归
function fn(){
fn()
}
fn()
JS执行机制
js是单线程
JavaScript语言的一个特点就是单线程,同一时间只做一件事
同步与异步
作用:解决js是单线程的缺点
同步
前一任务完成再完成后一任务,程序的执行顺序与任务的排列顺序一致,同步的
同步任务
同步任务是在主线程上执行的,形成一个执行栈
异步
前一件事花费很长时间,后一个无需等待立即执行。
异步任务
Js的异步是通过回调函数实现的
同步与异步的总结
事件循环
主线程不断的获取任务,执行任务,再次获取任务,再次执行任务,这种机制被称为“事件循环”
location对象
location的数据类型是对象,它拆分并保存了URL地址的各个组成部分
常用属性和方法
1.href属性获取完整的URL地址,对其赋值时用于地址的跳转(可读写)
console.log(location.href)
location.href=''
2.search属性获取地址中携带的参数,符号?后面部分
console.log(location.search)
3.hash属性获取地址中的哈希值,符号#后面部分
console.log(location.hash)
vue路由,可以在相同页面,显示不同的内容
4.reload方法用来刷新当前页面,传入参数true时强制刷新
<button>点击刷新</button>
<script>
let btn=document.querySelector('button')
btn.addEventListener('click',function (){
//强制刷新
location.reload(true)
})
</script>
navigator对象
navigator的数据类型是对象,记录浏览器自身相关的信息
histroy对象
history的数据类型是对象,该对象与浏览器地址的操作相对应,如前进,后退,历史记录