这是我的data
:
$scope.data = [
{
"top":"2",
"status":"1",
"name":"Anna",
},
{
"top":"2",
"status":"1",
"name":"Jodie",
},
{
"top":"2",
"status":"1",
"name":"susan",
}
];
现在我想将对象转换为数组。当我运行我的程序时,我在控制台日志中得到以下输出:
{
"1":{
"2":"3"
}
}
但是我需要它们作为数组输出而不是对象。有人告诉我使用map功能,但是我需要在不使用map功能的情况下执行它们,因为它会在我的项目过程中引起冲突。有没有其他方法可以不使用地图功能?
输出中的1
表示状态对象。 2
表示热门对象,3
表示排名靠前的学生人数。
这是我到目前为止的代码:http://jsfiddle.net/DharkRoses/sjz5aLv1/
有什么建议吗? TIA
更新: 我想要的输出看起来像这样:
(
[1] =>Array
(
[2] => 3
)
)
答案 0 :(得分:2)
我在下面的数组中进行处理:
$scope.data = [
{ "top": "1", "status": "1", "name": "Anna" },
{ "top": "2", "status": "1", "name": "Jodie" },
{ "top": "2", "status": "1", "name": "Susan" },
{ "top": "3", "status": "1", "name": "Eddie" },
{ "top": "2", "status": "2", "name": "Megan" },
{ "top": "2", "status": "2", "name": "Frank" }
];
如果我没有错,你想得到这样的回应:
[
{
"1": [
{ "1": 1 },
{ "2": 2 },
{ "3": 1 }
]
},
{
"2": [
{ "2": 2 }
]
}
]
这是一个现场演示,以达到以上效果:http://jsfiddle.net/nerezo/vz0dbdeq/