【发布时间】:2020-01-14 04:39:37
【问题描述】:
这是我的代码生成的格式:
[
{
"certifications": [
{
"certificate": "NA",
"completed_on": "2019-09-24T18:30:00.000Z",
"tc_name": "TC-174195"
}
],
"firstname": "Dipak",
"lastname": "Das",
"email": "dasdipak99@gmail.com"
}
]
我想设计如下格式:
[
{
firstname: "Dipak",
lastname: "Das",
email: "dasdipak99@gmail.com",
certifications: [
{
certificate: "NA",
completed_on: "2019-09-24T18:30:00.000Z",
tc_name: "TC-174195"
}
]
}
]
下面是我的代码:
var user = [];
var certificate = {
certifications: []
};
certificate["firstname"] = rows[0].firstname;
certificate["lastname"] = rows[0].lastname;
certificate["email"] = rows[0].email;
for (let i = 0; i < rows.length; ++i) {
certificate.certifications.push({
certificate: rows[i].certification_names,
completed_on: rows[i].completed_on,
tc_name: rows[i].tc_name
});
}
任何想法如何维护插入顺序?我对javascript很陌生,如果我解释得不好,请道歉。
【问题讨论】:
-
根据您的描述,它看起来像是_is_maintaining 插入顺序。你的对象首先有
certifications,然后是firstname、lastname和email,这就是你应该得到的格式。 -
嗨@JLRishe - 请指导我维护
firstname、lastname、email和certifications? -
似乎你只需要做你已经在做的事情,但在末尾而不是开头插入
certifications。我也有点好奇你在这里真正想要实现什么。试图以特定的顺序维护对象属性有点徒劳,我不建议你依赖它来做任何事情。 -
同意@JLRishe。不知道为什么你需要维护一个你不应该依赖的对象的顺序。如果它是一个数组,情况就不同了。
-
@NijeeshJoshy JS 自 2015 年以来确实保证对于非整数键名。但依赖它仍然不是一个好主意。
标签: javascript arrays json ecmascript-6