如何动态创建JavaScript数组(JSON格式)?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何动态创建JavaScript数组(JSON格式)?相关的知识,希望对你有一定的参考价值。
我正在尝试创建以下内容:
var employees = {"accounting": [ // accounting is an array in employees.
{ "firstName" : "John", // First element
"lastName" : "Doe",
"age" : 23 },
{ "firstName" : "Mary", // Second Element
"lastName" : "Smith",
"age" : 32 }
] // End "accounting" array.
} // End Employees
我开始了
var employees = new Array();
如何动态继续创建数组(可能会使用变量更改firstName
)?我似乎没有得到嵌套数组。
答案
我们的对象数组
var someData = [
{firstName: "Max", lastName: "Mustermann", age: 40},
{firstName: "Hagbard", lastName: "Celine", age: 44},
{firstName: "Karl", lastName: "Koch", age: 42},
];
与......在...
var employees = {
accounting: []
};
for(var i in someData) {
var item = someData[i];
employees.accounting.push({
"firstName" : item.firstName,
"lastName" : item.lastName,
"age" : item.age
});
}
或者使用更清洁的Array.prototype.map()
:
var employees = {
accounting: []
};
someData.map(function(item) {
employees.accounting.push({
"firstName" : item.firstName,
"lastName" : item.lastName,
"age" : item.age
});
}
另一答案
var accounting = [];
var employees = {};
for(var i in someData) {
var item = someData[i];
accounting.push({
"firstName" : item.firstName,
"lastName" : item.lastName,
"age" : item.age
});
}
employees.accounting = accounting;
另一答案
我做的是与@Chase回答有点不同的东西:
var employees = {};
// ...and then:
employees.accounting = new Array();
for (var i = 0; i < someArray.length; i++) {
var temp_item = someArray[i];
// Maybe, here make something like:
// temp_item.name = 'some value'
employees.accounting.push({
"firstName" : temp_item.firstName,
"lastName" : temp_item.lastName,
"age" : temp_item.age
});
}
那项工作形成了我!
我希望它可能对其他人有用!
另一答案
var student = [];
var obj = {
'first_name': name,
'last_name': name,
'age': age,
}
student.push(obj);
以上是关于如何动态创建JavaScript数组(JSON格式)?的主要内容,如果未能解决你的问题,请参考以下文章
在 JavaScript 中动态创建 JSON 数组键 [重复]
为 DataTables aoColumnDefs 创建 JavaScript 数组(JSON 格式)