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)
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的值