创建关联多维数组对象我有一个数据库表3列:如何在JavaScript
id | city | area |
--------------------------------------
2000 | Paris | City center |
2010 | Barcelona | Las Ramblas |
2030 | Madrid | City center |
2400 | Paris | City center |
3600 | Barcelona | City center |
3670 | Madrid | City center |
5000 | Paris | Eiffel tower |
7000 | Paris | Eiffel tower |
1000 | Barcelona | Las Ramblas |
2500 | Madrid | city center |
值在id
柱是独一无二的!
据我试图在属于下城区得到每个区域的表:
$scope.cities = [
{
name: "city_1",
areas: [
{name: "area_1"},
{name: "area_2"}
]
},
{
name: "city_2",
areas: [
{name: "area_1"},
{name: "area_2"},
{name: "area_3"}
]
},
{
name: "city_3",
areas: [
{name: "area_1"}
]
}
];
我已经要求添加JSON输出,在这儿呢。
[{
"id": "2000",
"city": "Paris",
"cityArea": "City center"
}, {
"id": "2010",
"city": "Barcelona",
"cityArea": "Las Ramblas"
}, {
"id": "2030",
"city": "Madrid",
"cityArea": "City center"
}, {
"id": "2400",
"city": "Paris",
"cityArea": "City center"
}, {
"id": "3600",
"city": "Barcelona",
"cityArea": "City center"
}, {
"id": "3670",
"city": "Madrid",
"cityArea": "City center"
}, {
"id": "5000",
"city": "Paris",
"cityArea": "Eiffel tower"
}, {
"id": "7000",
"city": "Paris",
"cityArea": "Eiffel tower"
}, {
"id": "1000",
"city": "Barcelona",
"cityArea": "Las Ramblas"
}, {
"id": "2500",
"city": "Madrid",
"cityArea": "city center"
}]
我已经尝试过:
var duplicatedCities = [];
for(var i=0; i<$scope.results.length; i++) {
duplicatedCities.push($scope.results[i].city);
}
//output
// ["Paris","Barcelona","Madrid","Paris","Barcelona","Madrid","Paris","Paris","Barcelona","Madrid"];
var uniqueCities = [];
uniqueCities.push(duplicatedCities.filter(function(elem, index, self) {
return index == self.indexOf(elem);
}));
//output
//["Paris","Barcelona","Madrid"];
,但现在什么?
[创建与多维数组的多维对象(http://stackoverflow.com/questions/11648586/create-multidimensional-object-with-multidimentional-arrays) – Tibrogargan
声音的可能的复制像一个挑战。你有尝试过什么吗?你如何从数据库表中获取数据到JavaScript? –
你得到一个json字符串,并且想要按照描述创建'$ scope.cities'。对?然后提供该json。 –