简体   繁体   English

将不同的JavaScript对象合并到一个对象中

[英]Combine different JavaScript objects in one object

I have four different JavaScript objects. 我有四个不同的JavaScript对象。 I want to send all these four objects as one to my view layer. 我想将所有这四个对象作为一个发送到我的视图层。

Here is the code: 这是代码:

var pending=[];
var approved=[];
for (var key in rdata) {
    if (rdata.hasOwnProperty(key)) {
        var obj = rdata[key];
        for (var prop in obj) {
            if (obj.hasOwnProperty(prop)) {
                if(obj[prop].statusEnum=="PENDING"){
                    pending.push(obj[prop]);
                }else if(obj[prop].statusEnum=="APPROVED"){
                    approved.push(obj[prop]);
                }
            }
        }
    }
}

So here I got two objects "pending" and "approved" which I want to wrap into one single object separately with some keys to the view layer, so that I can use it at different places. 因此,在这里我得到了两个对象“ pending”和“ approved”,它们要用视图层的一些键分别包装到一个对象中,以便可以在不同的地方使用它。

You can easily just create a single object with two lists 'pending' and 'approved', javascript is excellent for using and manipulating objects, it is good to take advantage of that 您可以轻松地创建带有两个列表“ pending”和“ approved”的单个对象,javascript非常适合使用和操作对象,因此可以很好地利用它

var list = {'pending':[], 'approved':[]}

then in your for in loop you can do: 然后在for in循环中,您可以执行以下操作:

list['pending'].push(obj[prop])

and

list['approved'].push(obj[prop])

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM