可能会因此而失败,但JS对我来说仍然是一个新的野兽。我已经得到了从数据库中的数据对象,并想了在一个JS数组对象是这样的组织:在JS中使用唯一键创建嵌套对象
[ A: [
{"id": 28, "name": "Ackerman, William"},
{"id": 18, "name": "Anderson, Sherry"},
],
B: [
{"id": 42, "name": "Barry, Tristan"},
{"id": 33, "name": "Baker, Lionel"},
],
C: [
{"id": 79, "name": "Chen, Amy"},
{"id": 21, "name": "Chen, Benjamin"},
{"id": 86, "name": "Cornish, Jezebel"}
]
.....
]
所以我想唯一的关键是最后的名称和筑巢的信组中包含姓氏的人员列表。我只得到隔离独特的字母,但我把每个键下的名字列表丢失了。
var list = [];
for(var i=0; i< employees.length; i++) {
var key = employees[i].firstletter;
var obj = {"id": employees[i].employee_id, "name": employees[i].last_name + ', '+ employees[i].first_name};
var name = [];
name.push(obj);
list[key] = name;
}
当然,这只是给了我各组最后的结果......
请加原始数据为好。 –
您的第一个代码块中的语法不正确,fwiw:数组表示法不允许使用字母数字键;它只是一个值的列表。如果你想要字母数字键,你想要的是一个普通的对象初始值设定项('{}')。基本上,外层'[]'应该是'{}'。 – Pointy