添加对象组件而不替换旧组件-制作JSON数组



我想用jQuery制作JSON数组,但遇到了一些问题:

<html>
    <head>
        <title>Demo - Push Data Object</title>
        <script type="text/javascript" language="javascript" src="js/jquery.js"></script>
        <script>
            var obj = new Object();
            $(document).ready(function() {
                $("#add").click(function() {
                    item('Item 1', '1000');
                    item('Item 2', '2000');
                    console.log(JSON.stringify(obj));
                });
            });
            function item(itemNo, price) {
                obj.itemNo = itemNo;
                obj.price = price;
            };
        </script>
    </head>
    <body>
        <input id="add" type="button" value="Add Object" />
    </body>
</html>

单击按钮add时,它将打印:CCD_ 2。

我想要实现的是这样一个:

{
    {
        "itemNo":"Item 1",
        "price":"1000"
    }, 
    {
        "itemNo":"Item 2",
        "price":"2000"
    }
}

我应该在上面的代码中更改什么

您想要的输出不是有效的JSON;因为您有一个项目列表,所以外括号应该是[ ]。以下代码生成(Demo):

var objs = [];
$(document).ready(function() {
    $("#add").click(function() {
        objs.push(item('Item 1', '1000'));
        objs.push(item('Item 2', '2000'));
        console.log(JSON.stringify(objs));
    });
});
function item(itemNo, price) {
    return { 
        itemNo : itemNo,
        price : price
    };
};


输出:

[
    {
        "itemNo":"Item 1",
        "price":"1000"
    }, 
    {
        "itemNo":"Item 2",
        "price":"2000"
    }
]

相关内容

  • 没有找到相关文章

最新更新