js- bom

 

bom浏览器模型,window是js最顶级对象 其设置了几个功能对象如上图

在全局环境下声明的变量、函数都是window的属性或方法;

window的属性和方法无需window.调用

1.定时器

// setTimeout:延时函数可以在设定的时间后工作
      console.log('时间到了')
    }, 2000)

// let id = setInterval,定时器可在设定时间后工作且无限循环
setInterval(function () {
      console.log('时间到了')
    }, 2000)

// setInterval和setTimeout都产生一个id用来清理定时器
    clearInterval(id)

2.location对象

用来获取URL 地址的各个组成部分

navigator对象

3.histroy对象

用来控制浏览器的历史记录

4. 本地存储

以前我们页面写的数据一刷新页面就没有了,本地存储解决此问题

类型是否自动清除是否可跨窗口共享数据
localStorag是,必须手动清除        
sessionStorag否,页面关闭自动清理

读写方法

<script>
    // 1. 要存储一个名字  'uname', 'pink老师'
    // localStorage.setItem('键','值')
    localStorage.setItem('uname', 'pink老师')
    // 2. 获取方式  都加引号
    console.log(localStorage.getItem('uname'))
    // 3. 删除本地存储  只删除名字
    // localStorage.removeItem('uname')
    // 4. 改  如果原来有这个key,则是改,如果么有这个key是增
    localStorage.setItem('uname', 'red老师')

    // 我要存一个年龄
    // 2. 本地存储只能存储字符串数据类型
    localStorage.setItem('age', 18)
    console.log(localStorage.getItem('age')) //'18'
  </script>

存储复杂类型数据

<script>
    const obj = {
      uname: 'pink老师',
      age: 18,
      gender: '女'
    }
    // // 存储 复杂数据类型  无法直接使用
    // localStorage.setItem('obj', obj)  [object object]    
    // // 取
    // console.log(localStorage.getItem('obj'))

    // 1.复杂数据类型存储必须转换为 JSON字符串存储
    localStorage.setItem('obj', JSON.stringify(obj))
    // JSON 对象  属性和值有引号,而是引号统一是双引号
    // {"uname":"pink老师","age":18,"gender":"女"}
    // 取
    // console.log(typeof localStorage.getItem('obj'))
    // 2. 把JSON字符串转换为 对象
    const str = localStorage.getItem('obj') // {"uname":"pink老师","age":18,"gender":"女"}
    console.log(JSON.parse(str))
  </script>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值