• 对于json的简单理解


    什么是json

    js红宝书上描述到:

    json是一种数据格式,不是编程语言,它不属于javaScript,他们只是有着相同的语法,json也不止可以在js中使用

    json语法

    json语法有三种类型的值

    1、简单值:字符串、数值、布尔型、null

    2、对象:第一种复杂类型数据

    3、数组:第二种复杂类型数据,数值的值可以是任意类型,包括简单值、对象、其他数组

    json没有变量、函数、对象实列的概念

    json字符串和js字符串的最主要的区别就是,json字符串必须使用双引号(单引号会导致语法错误)

    json对象和js对象的区别:

    js对象

    let person{
     name:"tom",
     age:"20"
    };
    

    json对象

    {
    "name":"alice",
    "age":"20"
    }
    

    可以看出,json对象没有变量声明(json种没有变量)、没有分号(json不属于js语句)、属性必须双引号包裹起来

    json的解析与序列化

    在json对象种有两个方法

    stringify()、parse()

    stringify():可以把js序列转换为json字符串.

    parse():可以把json解析为原生的js值

    json.stringify()还可以接收两个参数,第一个参数是过滤器,可以是数组或函数,第二个参数用于缩进结果JSON字符串的选项。

    let book={
    title: "LOL",
    authors:[
    "tom",
    "mody"
    ],
    edition: 4,
    year: 2017
    };
    let jsonText=JSON.stringify(book,["title","edition"]);
    
    //控制字符缩进
    let jsonText=JSON.stringify(book,null,4)
    
    
    {"title:"LOL","edition":4}
    

    对于需要在JSON.stringify()之上自定义JSON序列化,可以用到toJSON()方法

    就是把js数据转换为json数据

    把json数据转化为JS数据: JSON.parse()

  • 相关阅读:
    更好一点的:Vue 利用指令实现禁止反复发送请求
    实现一个深度比较
    Zrender:实现波浪纹效果
    Echarts:实现拖拽效果
    找到树中指定id的所有父节点
    Vue 利用指令实现禁止反复发送请求
    我对组件化的一点细琐的想法
    转盘式旋转抽奖
    信息系统与信息化
    跳出牢笼,逃出生天
  • 原文地址:https://www.cnblogs.com/AFBF/p/14836493.html
Copyright © 2020-2023  润新知