zoukankan      html  css  js  c++  java
  • 这几天理解的 json

    之前一直有听说 JSON (javascript object notation),但是一直没有去看明白是什么一回事。

    知道这几天才对这个当下很流行的用于数据交换的格式进行了解。

    格式:

    先说一下这个JSON的格式(其实看名字就知道这个跟javascript的对象类型有什么不可告人的关系)

    {
        "id":1,
        "name":"peter"
    }
    

    好吧,这个是最简单的一个JSON对象。

    其实一开始我是以为 JSON 就是 js 的对象,但是这个只是用了 js 对象的格式,而且写法也有写规则:

    键一定要用 “ ” 这个双引号括住,而且如果值是字符串的话也要用 “” 这个括起来,不然会报错的。

    与字符串的相互转换:

    作为数据交换的对象,最主要目的是和后台进行数据交换,不然要他来干嘛。

    先说一下把 JSON 对象转换成字符串,毕竟传到后台的是一段 JSON 格式的字符串。

    var jsonDemo = {
        "id":1,
        "name":"peter"
    }
    function jsonToStr(json) {
        return JSON.stringify(json);
    }
    var result = jsonToStr(jsonDemo);

    好了,现在就可以把 JSON 格式的字符串输出了。

    然后再有把 JSON 格式的字符串转换成JSON

    var jsonDemo2 = '{\
        "id":1,\
        "name":"peter"\
    }'

    function strToJSON(str) { return JSON.parse(str); }

    var result = strToJSON(jsonDemo2);

    还有一个更简单的方法

    新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个方法都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,则说明 json 包版本太低。

    来自 $雨$

  • 相关阅读:
    JSP总结1
    EL总结2-域
    EL总结1
    getRealPath和getContextPath
    mybatis获取参数数值的两个方式
    进程与线程区别与联系
    进程间通信和线程间通信的区别
    STRLEN
    二叉树数据结构和算法
    TYPDEF使用注意部分
  • 原文地址:https://www.cnblogs.com/zxdesign/p/2991394.html
Copyright © 2011-2022 走看看