zoukankan      html  css  js  c++  java
  • Json

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#Java、JavaScript、PerlPython等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(网络传输速率)。

    JSON 语法规则

    JSON 语法是 JavaScript 对象表示语法的子集。
    • 数据在键值对中
    • 数据由逗号分隔
    • 花括号保存对象
    • 方括号保存数组

    JSON 名称/值对

    JSON 数据的书写格式是:名称/值对。
    名称/值对组合中的名称写在前面(在双引号中),值对写在后面(同样在双引号中),中间用冒号隔开:
    1
    "firstName":"John"
    这很容易理解,等价于这条 JavaScript 语句:
    1
    firstName="John"

    JSON 值

    JSON 值可以是:
    • 数字(整数或浮点数)
    • 字符串(在双引号中)
    • 逻辑值(true 或 false)
    • 数组(在方括号中)
    • 对象(在花括号中)
    • null

     这里对数组转json字符串和json转对象数组进行下自我的理解

    JS中 

     因为最近做项目的时候需要,所以需要了解一下

      数组转json主要是转的时候注意格式,以及对他的键值的指定,我遇到的问题是以数组的值作为json的值

      

    var json_array = [];  
              
            for(var i = 0;i<10;i++)  
            {  
                /*  
                 * 创建object对象,存放到数组中  
                 */  
               var person=new Object();  
                person.name = "Q"+i;  
                person.age = i;  
                  
                json_array.push(person);  
                
                
            }  
            /*  
             * 将object数组转会为json形式;  
             */  
            var json = JSON.stringify(json_array);  
              
            console.log(json);  
            /*  
             * json转object数组  
             */  
            var jsonobj = JSON.parse(json, function (key, value)   
            {     
                
                return key.indexOf('date') >= 0 ? new Date(value) : value;    
            });  
             
            console.log(jsonobj);

    同时对指定的键值也可以采取拼接的方法

    var    changes=['a','b','c','d'];
            var    person=new Object();
            var    data=['name','age','time',"wocao"];
            var jsonstr='{'
            for ( var j = 0; j < changes.length; j++) {
                                      jsonstr+=data[j]+":";
                                      jsonstr+=changes[j];
                                     
                                      
                                       if(j!=changes.length-1){
                                        jsonstr+=','
            }
                                    }
            jsonstr+='}';
  • 相关阅读:
    提高情商的八种方法
    线程安全与可重入
    【Linux必知必会】initrd.img、vmlinux和 vmlinuz************
    shell调试技术
    (转)DeviceIOControl详解
    软件质量特性及其子特性列表
    【Linux必知必会】initrd.img、vmlinux和 vmlinuz
    驱动程序与应用程序之间共享内存
    调试器GDB
    知道IP地址和子网掩码。算出网络地址、广播地址、地址范围、可用的主机数
  • 原文地址:https://www.cnblogs.com/yaobolove/p/4829155.html
Copyright © 2011-2022 走看看