如何循环这个JSON对象?

时间:2014-02-01 10:14:01

标签: javascript jquery json

循环遍历此对象并在从不同用户收到的单独div中显示消息。 怎么做。请帮助。我是JSON,Jquery和Javascript的新手

[
Object { id="1", fromuser="1", touser="4", msg="hi"}, 
Object { id="2", fromuser="2", touser="4", msg="hello"}, 
Object { id="3", fromuser="2", touser="4", msg="hru?"},
Object { id="4", fromuser="3", touser="4", msg="hru?"},
Object { id="5", fromuser="1", touser="4", msg="hru?"} 
]

------------ ------------ ------------
|fromuser:1| |fromuser:2| |fromuser:3|
|msg:hi    | |msg:hello | |msg:hru?  |
|msg:hru?  | |msg:hru?  | |          |
------------ ------------ ------------

2 个答案:

答案 0 :(得分:2)

您可以使用Jquery

var yourObject = [
    { id = "1", fromuser = "1", touser = "4", msg = "hi" }, 
    { id = "2", fromuser = "2", touser = "4", msg = "hello" }, 
    { id = "3", fromuser = "2", touser = "4", msg = "hru?" }, 
    { id = "4", fromuser = "3", touser = "4", msg = "hru?" }, 
    { id = "5", fromuser = "1", touser = "4", msg = "hru?" }
];
$.each(yourObject, function () {
    $um = $('#usermesage' + this.fromuser);
    // create new container if doesn't existes.
    if ($um.length == 0) {
        $um = $('<div />', {
            'id': 'usermesage' + this.fromuser
        });
        $um.appednTo('body');
    }
    $um.append($('<div />', {
        'class': 'line'
    }).append(
        $('<div />', {
            text: "msg" + this.msg
        });
    ));
});

答案 1 :(得分:1)

对于每个项目,您需要检查它是否是对象的'key' - 属性。

for (var property in object) {
    if (object.hasOwnProperty(property)) {
        //
    }
}