web APIs day6--JS执行机制、本地存储

window对象

内置的JS全局对象(顶级对象)
console.log() alert()
DOM 知识点 document
BOM location navigator
window 可以省略不写

延时器

延时一段时间再来执行
语法 let timerId = setTimeout(函数,延时时间)
关闭 clearTimeout(timerId)

和定时器区别
定时器 每间隔一段时间就来执行, 执行n次(除非关闭)
延时器 延时一段时间来执行,执行1次

JS执行机制

JS是门单线程的编程语言 同一时间只能做一件事情
JS 分成同步 + 异步
1.同步
console.log()
for循环

2.异步
注册事件 box.addEventListener('click', function(){})
延时器 定时器
后期 Ajax

1.JS遇到同步任务会按照书写顺序去依次执行
2.遇到异步任务,会交给浏览器,当异步任务需要执行的时候,浏览器会把异步任务对应的回调函数放到任务队列中
3.一旦当JS主线程执行了所有同步任务,去任务队列中来查看是否有需要执行的异步任务,取出对应回调函数来执行 (事件循环 Event Loop)


微信截图_20220505193303.png

location对象

1.地址栏有关
2.href属性:
获取到完整的url地址
设置,起到页面跳转作用
3.search属性
获取到查询字符串 ?后面内容
4.hash 属性
哈希值 获取#后面
5.reload 方法
刷新页面

其他BOM对象

navigator对象
userAgent 用户的浏览器信息
history对象:
back() 后退一个历史记录
forward() 前进一个历史记录

swiper插件 官网: https://www.swiper.com.cn/

本地存储

localStorage
永久存储,除非手动删除
存:localStorage.setItem('键', '值')
取:localStorage.getItem('键')
删:localStorage.removeItem('键')

存复杂数据类型

把复杂数据转换成JSON字符串 JSON.stringify ()
localStorage.setItem('data', JSON.stringify(复杂数据))

取出来的是JSON字符串,解析得到复杂数据 JSON.parse()
JSON.parse(localStorage.getItem('data'))

sessionStorage 了解

生命周期(关闭页面或关闭浏览器,存储的数据就没有了)
使用方式同localStorage

自定义属性

固有属性: 标签自带的属性(src href id ...)
自定义属性:自己定义的属性(作用:可以在标签上存数据)

操作自定义属性,需要有额外方法来操作,了解即可
getAttribute() 获取
setAttribute() 设置
removeAttribute() 移出

推荐的规范做法
在标签,通过data- 开头来表示自定义 data-index data-num
在JS中,通过dataset属性来操作:
1.元素.dataset // 得到一个对象 {index: 值, num: 值}
2.元素.dataset.index 就可以获取自定义属性 data-index的值

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容