• 夺命雷公狗---javascript NO:26 json数据格式


    1、什么是json

    答:所谓的json就是一种无序的数据集合,在JavaScript代码中可以通过一组花括号{}来表示这个集合。

    2、为什么需要json

    答:为了保存和编辑大批量数据

    3、json的定义和使用

    var json对象 = {属性:属性的值,…};

    var json对象 = {‘属性’:属性的值,…};

    var json对象 = {“属性”:属性的值,…};

    1)json对象的定义

    例1:定义一个json对象,用于保存一个人的信息

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset=’utf-8′>
    <title></title>
    </head>
    <body>
    <script>
    var person = {name:’lisi’,age:55,address:’广东省广州市’};
    var person = {‘name':’lisi’,’age':25,’address':’广东省广州市’};
    var person = {“name”:”lisi”,”age”:50,”address”:”广东省广州市”};
    </script>
    </body>
    </html>

    json对象的调用

    json对象.属性

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset=’utf-8′>
    <title></title>
    </head>
    <body>
    <script>
    var person = {name:’lisi’,age:55,address:’广东省广州市’};
    alert(person.name+’–‘+person.age+’–‘+person.address);
    </script>
    </body>
    </html>

    使用json保存多个人的信息

    在实际项目开发中,我们通常使用xml或json保存大批量数据。

    定义格式如下:

    var json对象 = [{属性:属性的值,…},{属性:属性的值,…},{属性:属性的值,…}];

    示例代码:

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset=’utf-8′>
    <title></title>
    </head>
    <body>
    <script>
    var person = [{
    name:’lisi’,
    age:50,
    address:’广东省广州市’
    },{
    name:’zhangsan’,
    age:55,
    address:’广东省广州市’
    },{
    name:’zhangfei’,
    age:66,
    address:’广东省广州市’
    }];
    alert(person[2].name+’–‘+person[2].age+’–‘+person[2].address);
    </script>
    </body>
    </html>

    json大批量数据遍历输出

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset=’utf-8′>
    <title></title>
    </head>
    <body>
    <script>
    var person = [{
    name:’lisi’,
    age:50,
    address:’广东省广州市’
    },{
    name:’zhangsan’,
    age:55,
    address:’广东省广州市’
    },{
    name:’zhangfei’,
    age:66,
    address:’广东省广州市’
    }];
    //1.使用for循环遍历json格式数据
    for(var i=0;i<person.length;i++){
    document.write(person[i].name+’—‘);
    document.write(person[i].age+’—‘);
    document.write(person[i].address);
    document.write(‘<hr/>’);
    }
    //2.使用for..in..循环遍历json格式数据
    for(var i in person){
    document.write(person[i].name+’—‘);
    document.write(person[i].age+’—‘);
    document.write(person[i].address);
    document.write(‘<hr/>’);
    }
    </script>
    </body>
    </html>

    为json对象定义成员方法

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset=’utf-8′>
    <title></title>
    </head>
    <body>
    <script>
    var json = {
    name:’lisi’,
    age:22,
    //成员方法
    speak:function(){
    alert(this.name+’—‘+this.age);
    }
    };
    json.speak();
    </script>
    </body>
    </html>

    php与json

    1)把数组或对象转化为json数据格式

    json_encode(数组或对象);

    2)把json数据格式转化为数组或对象

    json_decode(json对象,true) :把json对象转换为数组

    json_decode(json对象,false) :把json对象转换为对象

    ① 把数组转化为json数据

    <?php
    header(“Content-Type:text/html;charset=utf-8″);
    $arr1 =  array(‘name’=>’lisi’, ‘age’=>’55’, ‘address’=>’广东省广州市’);
    echo ‘一维数组';
    echo json_encode($arr1);
    echo “<hr/>”;
    $arr2 = array(
    array(
    ‘name’=>’lisi’,
    ‘age’=>’55’,
    ‘address’=>’广东省广州市’
    ),
    array(
    ‘name’=>’zhangfei’,
    ‘age’=>’22’,
    ‘address’=>’广东省广州市’
    ),
    array(
    ‘name’=>’wangwu’,
    ‘age’=>’15’,
    ‘address’=>’广东省广州市’
    )
    );
    echo ‘二维数组';
    echo json_encode($arr2);

    ② 把对象转化为json数据

    <?php
    header(“Content-Type:text/html;charset=utf-8″);
    class Person{
    public $name;
    public $age;
    public $address;
    }
    $person = new Person();
    $person -> name = ‘lisi';
    $person -> age = 25;
    $person -> address = ‘广东省广州市';
    echo json_encode($person);

    ③ 把json数据转换为数组或对象

    <?php
    header(“Content-Type:text/html;charset=utf-8″);
    class Person{
    public $name;
    public $age;
    public $address;
    }
    $person = new Person();
    $person -> name = ‘lisi';
    $person -> age = 25;
    $person -> address = ‘广东省广州市';
    //json_encode($person);是将对象转换成json格式的
    $json = json_encode($person);
    //json转化为数组格式
    $arr = json_decode($json,true);
    print_r($arr);
    echo ‘<hr/>';
    //json转化成对象
    $obj = json_decode($json);
    print_r($obj);
     
  • 相关阅读:
    LeetCode_4——寻找两个有序数组的中位数
    Java的CAS与ABA问题
    跨域问题解决
    解决git-for-windows官网下载速度慢的问题
    Java对观察者模式的支持
    Java动态代理
    设计模式七大原则
    UML中的类图关系
    布隆过滤器(Bloom Filter)与Hash算法
    Ubuntu16安装fabric1.4.4环境
  • 原文地址:https://www.cnblogs.com/leigood/p/5031995.html
Copyright © 2020-2023  润新知