json数据和字符串json数据相互转换

    • 1.json数据和字符串json数据相互转换
    • 2.本地存储(localStorage、sessionStorage)
    • 3.audio的属性、事件、方法
      • 3.1属性
      • 3.2事件
      • 3.3方法
    • 4.video的属性、事件、方法
      • 4.1属性
      • 4.2事件
      • 4.3方法

1.json数据和字符串json数据相互转换

JSON 是一种基于文本的轻量级的数据交换格式。它可以被任何的编程语言读取和作为数据格式来传递。在项目开发中,使用 JSON 作为前后端数据交换的方式。在前端通过将一个符合 JSON 格式的数据结构序列化为 JSON 字符串,然后将它传递到后端,后端通过 JSON 格式的字符串解析后生成对应的数据结构,以此来实现前后端数据的一个传递。因为 JSON 的语法是基于 js 的,因此很容易将 JSON 和 js 中的对象弄混,但是应该注意的是 JSON 和 js 中的对象不是一回事,JSON 中对象格式更加严格,比如说在 JSON 中属性值不能为函数,不能出现 NaN 这样的属性值等,因此大多数的 js 对象是不符合 JSON 对象的格式的。

  • JSON.Stringify(要转换的数据):将json数据转换成字符串json数据
  • JSON.parse(要转换的数据):将字符串json数据转成真正的json数据
<script>
        var obj = {
            "name":"张三",
            "age":20
        }
        /* 
            JSON.Stringify(要转换的数据):将json数据转换成字符串json数据
            JSON.parse(要转换的数据):将字符串json数据转成真正的json数据
        */
       var res = JSON.stringify(obj);
       console.log(res);//"{"name":"张三","age":20}"
       var res1 = JSON.parse(res);
       console.log(res1);//{"name":"张三","age":20}
    </script>

2.本地存储(localStorage、sessionStorage)

  • 存储方法有3种:cookie localStorage sessionStorage

  • cookie:多用于服务器存储

  • localStorage和sessionStorage都是本地存储 存储到浏览器端

  • localStorage:长期存储,除非手动删除,否者会一直存在

    • 设置存储信息:localStorage.setItem(key,data)
    • 获取存储信息:localStorage.getItem(key)
    • 删除单个存储信息 localStorage.removeItem(key);
    • 清除所有缓存信息 localStorage.clear()
  • sessionStorage:会话存储,当前窗口(会话)关闭 数据就会清除

    • 语法和localStorage的用法一致,只需要将localStorage缓存SessionStorage即可

注意:存储数据是键值对的形式存储 存储的格式都是字符串

 //存储
        localStorage.setItem("name","张三");
        localStorage.setItem("age",20);
        localStorage.setItem("isLogin",true)
        var obj = {
            "name":"李四",
            "age":18
        }
        // 如果是json数据存储  需要先用JSON.stringify转换成字符串形式
        localStorage.setItem("obj1",JSON.stringify( obj ) )
        // 获取
        console.log(  localStorage.getItem("age")   );//"20"  string类型
        console.log(  localStorage.getItem("isLogin") )// "true"
        var res = localStorage.getItem("obj1")
        console.log(  JSON.parse(res) ); //{"name":"李四","age":18}
        // 删除
        localStorage.removeItem("user");
        // 手动清空
        localStorage.clear();

3.audio的属性、事件、方法

3.1属性

  • src 设置获取音频资源路径
  • controls 是否显示标签 true/false
  • muted 是否静音 true/false
  • loop 是否循环播放 true/false
  • autoplay 音频是否自动播放 true/false 不是所有的浏览器都有效果
  • currentSrc 只读属性 获取音频资源地址
  • currentTime 获取当前播放时长
  • volume 获取设置音频的音量 范围[0,1]
  • pasued 音频是否停止播放 true暂停 false播放
  • ended 音频是否结束播放 true结束 false没有结束
  • playbackRate 获取设置音频速度
// 1.属性
        // src 设置获取音频资源路径
        audio.src = "./source/hanmai.mp3";
        // controls 是否显示标签  true/false
        audio.controls = true;
        // muted  是否静音   true/false
        audio.muted = false;
        // loop  是否循环播放   true/false
        audio.loop = false;
        // autoplay  音频是否自动播放  true/false  不是所有的都有效果
        audio.autoplay = true;
        btn[0].onclick = function () {
            // currentSrc 只读属性  获取音频资源地址
            console.log(audio.currentSrc);
            // currentTime  获取当前播放时长
            console.log(audio.currentTime);
            // duration  获取音频的总时长
            console.log(audio.duration)
            // volume  获取设置音频的音量  范围[0,1]
            console.log(audio.volume)
            // pasued  音频是否停止播放  true暂停  false播放
            console.log(audio.paused)
            // ended    音频是否结束播放  true结束  false没有结束
            console.log(audio.ended);
            // playbackRate  获取设置音频速度
            console.log(audio.playbackRate)
            audio.playbackRate = 3;
        }

3.2事件

  • oncanplay 开始准备播放音频的时候触发
  • onpause 点击播放暂停按钮触发
  • onended 音频颁发给结束触发
  • ontimeupdate 播放时间更新触发
 // 2.事件  有自己的触发场景
        // oncanplay  开始准备播放音频的时候
        audio.oncanplay = function () {
            console.log("开始准备");
        }
        // onpause   点击播放按钮
        audio.onpause = function () {
            console.log("播放")
        }
        // onended   结束
        audio.onended = function () {
            console.log("结束")
        }
        // ontimeupdate   时间更新
        audio.ontimeupdate = function () {
            console.log("正在播放音频")
        }

3.3方法

  • audio.play();//播放
  • audio.pause();//暂停
  • audio.load();//重新加载
    // 3.方法   主动触发某个功能
        btn[1].onclick = function () {
            // console.log(123);
            audio.play();//播放
            audio.pause();//暂停
            audio.load();//重新加载
        }

4.video的属性、事件、方法

4.1属性

  • src 设置获取视频资源路径
  • poster 设置视频封面
  • width/height 设置视频宽高
  • controls 是否显示标签 true/false
  • muted 是否静音 true/false
  • loop 是否循环播放 true/false
  • autoplay 视频是否自动播放 true/false 不是所有的浏览器都有效果
  • currentSrc 只读属性 获取视频资源地址
  • currentTime 获取当前播放时长
  • volume 获取设置视频的音量 范围[0,1]
  • pasued 视频是否停止播放 true暂停 false播放
  • ended 视频是否结束播放 true结束 false没有结束
  • playbackRate 获取设置视频速度

4.2事件

  • oncanplay 开始准备播放音频的时候触发
  • onpause 点击播放暂停按钮触发
  • onended 音频颁发给结束触发
  • ontimeupdate 播放时间更新触发

4.3方法

  • video.play();//播放
  • video.pause();//暂停
  • video.load();//重新加载
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。