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

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();//重新加载
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值