js中string转成json格式

来源:互联网 发布:kof98键盘优化版 编辑:程序博客网 时间:2024/05/19 06:49

 

转自http://blog.163.com/xiexiaoming05@126/blog/static/6753898520093275828469/
 

 

JSON (JavaScript Object Notation)一种简单的数据格式,比xml更轻巧。 JSON 是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON 数据不需要任何特殊的 API 或工具包。

JSON的规则很简单: 对象是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间使用“,”(逗号)分隔。

 

下面通过一些例子对JSON作一些简单的介绍:

 

一、可以通过Javascript中的eval函数把符合一定格式的字符串转化成JSON对象

 

<script language="javascript">

 

    function ShowJsonString()

 

     {

 

        response = (

 

            "[{ name: 'Joe', age: '30', gender: 'M'},{ name: 'Chandler', age: '32', gender: 'M'},{ name: 'Rose', age: '31', gender: 'M'}]"   //字符串形式

 

        );

 

        var response1 = "({ name: 'Vicson', age: '30', gender: 'M'})";   //字符串形式,这里的小括号不能少

 

        json = eval(response);

 

        json1 = eval(response1); 

 

        alert(json[0].name + "," + json[1].age + "," +  json[2].gender);

 

        alert(json1.name);

 

    }

 

    ShowJsonString();

 

</script>

 

二、直接定义JSON对象

 

<script language="javascript">

 

    function ShowJsonObject()

 

    {

 

        var user =

 

        {    

 

            username:"andy",   

 

            "age":20,   

 

            "info": { "tel": "25003614", "cellphone": "882"},   

 

            "address":   

 

                [   

 

                    {city:"shenzhen","postcode":"0755"},   

 

                    {"city":"guangzhou","postcode":"020"}   

 

                ]             //address是一个数组

 

        }                     //对象形式

 

        alert(user.username);

 

        alert(user.age);   

 

        alert(user.info.cellphone);   

 

        alert(user.address[0].city);   

 

        alert(user.address[0].postcode);

 

    }

 

    ShowJsonObject();

 

</script>

 

三、对JSON对象的属性进行赋值

 

<script language="javascript">

 

    function SetJsonObject()

 

    {

 

         var user=

 

         {

 

             "username":"andy"

 

         }

 

         user.username = "Tom";

 

         alert(user.username);

 

    }

 

    SetJsonObject();

 

</script>

 

四、通过json.js中的parseJSON方法把字符串转化成JSON对象,

 

    json.js文件包可以在http://www.json.org/json.js中下载

 

<script language="javascript" src="json.js"></script>

 

<script language="javascript">

 

    function parseJsonEval()

 

    {

 

        var str = '{"name":"Violet", "occupation":"character"}';

 

        var obj = str.parseJSON();

 

        alert(obj.toJSONString());

 

        alert(obj.name);

 

    }

 

    parseJsonEval();

 

</script>

0 0