BOM操作

88 阅读3分钟

一.Windows对象

(一)BOM(浏览器对象模型)

image.png 在浏览器对象模型中的注意事项:

1.基本的BOM的属性和方法都属于window这个全局对象 2.var定义在全局作用域的变量,函数都会成为window对象的属性和方法(调用时window可省略)

补充内容:

延时函数

    let timer = setTimeout(funciton,ms)
    //function为一个回调函数,ms是时间,毫秒为单位
    //该函数只执行一次,且在执行时需要等待,后面的代码先执行

(二)JS执行机制

1.JavaScript的语言特点:单线程(同一时间只能做一件事)

2.同步和异步:

同步:任务按照顺序一个一个执行(同步是指程序执行顺序和任务的排列顺序一致),它们在主线程上执行,形成一个执行栈

异步:因为异步任务需要等待,所以先执行同步任务,然后再执行异步任务(即在异步等待时间做同步任务,达到一个节省时间的效果,而不用等待上一个任务完成)
异步任务先被添加到任务队列(也称消息队列)

image.png

(三)location对象

1.概念:一个保存了当前文件URL地址的对象

2.location对象常见的属性和方法

//href属性
    //1.得到当前文件夹的URL地址
    console.log(location.href)
    //2.跳转到其他地址
    location.href='<url地址>'
    
//search属性
    //获取地址中携带的参数即符号?后面的部分
    console.log(location.search)

//hash属性
    //获取地址中的哈希值,#后面的部分
    console.log(location.hash)

//reload方法
    //刷新页面
    location.reload()//括号中填ture代表强制刷新

(四)navigator对象

1.概念:一个记录了浏览器自身相关信息的对象

2.常见的属性

//userAgent属性
    const userAgent = navigator.userAgent//得到的是用户代理信息的字符串

(五)history对象

1.概念:记录了历史记录以及由前进后退等方法的对象

2.常见方法

//back()方法
    windows.history.back()//返回上一页
//forward
     windows.history.forward()
//go
    window.history.go(delta);(-1和back一样功能)

二.本地存储

(一)本地存储介绍

为了解决浏览器刷新时造成的数据流失,所以html5提供的解决方案是将数据存储在用户的浏览器中

(二)本地存储分类

1.永久存储在本地,哪怕关闭页面也会存在的方法

//存储数据
    localStorage.setItem(key,value)
//获取数据
    localStorage.getItem(key)
//删除数据
    localStorage.removeItem(key)
/*
特性:
    1.一个浏览器中的多个窗口可也共享数据
    2.采用键值对的形式存储和使用
*/

2.以关闭浏览器窗口为生命期的方法

 sessionStorage.setItem(key,value)
 //存储·获取和删除语法与localStorage基本相同不做赘述
 /*
 特性:
     1.生命期是以浏览器窗口关闭,一个窗口下的数据可以共享
     2.键值对形式存储和使用
 */

(三)存储复杂数据类型

对于某些数据,可能以对象形式包含各种数据类型,而上述两种方法较适合存储字符串类型,故解决方案是将对象类型转换为JSON字符串类型再使用上述方法进行存储

 //1.将数据转换为json字符串存储数据
 const goods = {
     name:'华为nova9'
     price:2499
 }
 localStorage.setItem('goods',JSON.stringify(goods))
 //2.取出数据
 const obj = localStorage.getItem('goods')
 //3.将数据解析还原
 const data = JSON.parse(obj)

写在最后

文章是从个人初学的角度书写,内容简略,不足尚多,欢迎大家评论私信~

更多交流欢迎添加: 微信:nhhyyp qq:2479476436