创建具有数组结构的Json对象

时间:2012-07-17 08:30:16

标签: javascript json

我想创建一个Json对象,在调用函数时通过javascript创建一个数组。 (例如“list()”)。该函数应返回以下的json对象。

{
"config": [
           {
            "name":"steve",
            "id":"123"
           },
           {
            "name":"adam",
            "id":"124"
           },
           {
            "name":"eve",
            "id":"125"
           }
          ]
}

谢谢...

4 个答案:

答案 0 :(得分:0)

我知道“谷歌问题”答案在这里不受欢迎,但是认真地

在google中输入“javascript json”有多难?并按照第一个链接?在这:http://www.json.org/js.html

答案 1 :(得分:0)

这就是你要找的东西

var yourArray = [
           {
            "name":"steve",
            "id":"123"
           },
           {
            "name":"adam",
            "id":"124"
           },
           {
            "name":"eve",
            "id":"125"
           }
          ];

JSON lib

var myJsonString = JSON.stringify(yourArray);

JQuery json

var encoded = $.toJSON( yourArray );

答案 2 :(得分:0)

Json只是对象的字符串表示。 Json的全部意义在于语法本身是有效的javascript,可以将其解析为对象。

很难理解你在这里问的是什么。如果您只想知道如何使用代码处理对象,您可以执行以下操作:

var myObj = {};
myObj.config = [];
myObj.config[0] = {};
myObj.config[0].name = "steve";
myObj.config[0].id = "123";
myObj.config[1] = {};
myObj.config[1].name = "adam";
myObj.config[1].id = "124";
myObj.config[2] = {};
myObj.config[2].name = "eve";
myObj.config[2].id = "125";

这完全等同于:

var myObj = {
    "config": [
       {
        "name":"steve",
        "id":"123"
       },
       {
        "name":"adam",
        "id":"124"
       },
       {
        "name":"eve",
        "id":"125"
       }
    ]
};

答案 3 :(得分:0)

我已经完成了从数组json字符串解析json对象的完整bin,并使用jQuery以html格式显示。

<强> HTML:

<div class="jsonobj">
</div>
<br/>
<input type="button" value="Run" id="btnrun"/>
<input type="button" value="Reset" id="btnreset"/>

<强> CSS:

.jsonobj{
  background:#ddd;
}
.jsonobj .key{
  display:inline-block;
  clear:both;
  color:#993322;
}
.jsonobj .val{
  color:#336622;
  display:inline-block;
  margin-left:7px;
}
input[type=button]{
  border:1px solid #333;
}
input[type=button]:hover{
  background:#eee;
}

JQuery:

function list(a) {
    if (a == null || typeof(a) == "undefined") return false;

    return JSON.parse(a);
}
$(function() {

    $("#btnrun").click(function() {
        var jsonarr = '{"config": [{ "name":"steve", "id":"123"}, {  "name":"adam", "id":"124"},{"name":"eve","id":"125"}]}';

        //Convert into JSON Object
        var jsonObject = list(jsonarr);

        var i = 0,
            html = '';
        $.each(jsonObject.config, function(k, val) {
            html += "<div class='key'>Name:</div><div class='val'>" + val.name + "</div>";
            html += "<br/><div class='key'>Id:</div><div class='val'>" + val.id + "</div><br/>";

        });
        if (html != '') {
            $(".jsonobj").css({
                'padding': '5px',
                'border': '1px solid #222'
            });
            $(".jsonobj").html(html);
        }
    });

    $("#btnreset").click(function() {
        $(".jsonobj").css({
            'padding': '0px',
            'border': '0px'
        });
        $(".jsonobj").html("");
    });

    //Trigger Run on ready
    $("#btnrun").trigger('click');
});

http://codebins.com/bin/4ldqpai

上尝试