BOM(Browser Object Model)是浏览器对象模型

window是浏览器内置中的全局对象,学习的所有Web APIs的知识内容都是基于window对象实现的
window对象下包含了navigator、location、document、history、screen 5个属性,即所谓的BOM((浏览器对象模型)
document是实现DOM的基础,它其实是依附于window的属性。、
注:依附于window对象的所有属性和方法,使用时可以省略window
JavaScript内置的一个用来让代码延迟执行的函数,叫setTimeout
语法:

setTimeout仅仅只执行一次,所以可以理解为就是把一段代码延迟执行,平时省略window
【清除延时函数】


setlnterval的特征是重复执行,首次执行会延时
setTimeout的特征是延时执行,只执行1次
setTimeout结合递归函数,能模拟setInterval重复执行
clearTimeout清除由setTimeout创建的定时任务
JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事。这是因为Javascript这门脚本语言诞生的使命所致——JavaScript是为处理页面中用户的交互,以及操作DOM而诞生的。比如对某个DOM元素进行添加和删除操作,不能同时进行。应该先进行添加,之后再删除
单线程就意味着,所有任务需要排队,前一个任务结束,才会执行后一个任务。这样所导致的问题是:如果JS执行的时间过长,这样就会造成页面的渲染不连贯,导致页面渲染加载阻塞的感觉。
为了解决这个问题,利用多核CPU的计算能力,HTML5提出web Worker标准,允许JavaScript脚本创建多个线程。于是,JS 中出现了同步和异步。
【同步】
前一个任务结束后再执行后一个任务,程序的执行顺序与任务的排列顺序是一致的、同步的。
【异步】
在做一件事情时,因为这件事情会花费很长时间,在做这件事的同时,你还可以去处理其他事情。
本质区别:流水线上的各个流程的执行顺序不同
【同步任务】
同步任务都在主线程上执行,形成一个执行栈。
【异步任务】
JS的异步是通过回调函数实现的。一般而言,异步任务有以下三种类型:
1、普通事件,如click、resize等
2、资源加载,如load、error 等
3、定时器,包括setlnterval、setTimeout等
异步任务相关添加到任务队列中(任务队列也称为消息队列)。
1.先执行执行栈中的同步任务。
2.异步任务放入任务队列中。
3.一旦执行栈中的所有同步任务执行完毕,系统就会按次序读取任务队列中的异步任务,于是被读取的异步任务结束等待状态,进入执行栈,开始执行。

由于主线程不断的重复获得任务、执行任务、再获取任务、再执行,所以这种机制被称为事件循环(event loop)。
location的数据类型是对象,它拆分并保存了URL地址的各个组成部分
href 属性获取完整的URL地址,对其赋值时用于地址的跳转

search属性获取地址中携带的参数,符号?后面部分

hash 属性获取地址中的啥希值,符号#后面部分

reload方法用来刷新当前页面,传入参数true时表示强制刷新

navigator的数据类型是对象,该对象下记录了浏览器自身的相关信息
通过userAgent检测浏览器的版本及平台

history 的数据类型是对象,该对象与浏览器地址栏的操作相对应,如前进、后退、历史记录等

插件:就是别人写好的一些代码,我们只需要复制对应的代码,就可以直接实现对应的效果
熟悉官网,了解这个插件可以完成什么需求
https://www.swiper.com.cn/
看在线演示,找到符合自己需求的demo https://www.swiper.com.cn/demo/index.html
查看基本使用流程https:/ / www.swiper.com.cn/usage/index.html
查看APi文档,去配置自己的插件https:// www.swiper.com.cn/api/index.html
注意:多个swiper同时使用的时候,类名需要注意区分
随着互联网的快速发展,基于网页的应用越来越普遍,同时也变的越来越复杂,为了满足各种各样的需求,会经常性在本地存储大量的数据,HTML5规范提出了相关解决方案。
1、数据存储在用户浏览器中
2、设置、读取方便、甚至页面刷新不丢失数据
3、容量较大,sessionStorage和localStorage约5M左右
1、生命周期永久生效,除非手动删除否则关闭页面也会存在
2、可以多窗口(页面)共享(同一浏览器可以共享)
3、以键值对的形式存储使用


1、生命周期为关闭浏览器窗口
2、在同一个窗口(页面)下数据可以共享
3、以键值对的形式存储使用
4.用法跟localStorage基本相同