我正在尝试从对象中过滤掉一个用于发送的密钥。我有一个大的json树,它有几个子级别,我只想在发送之前过滤掉最底层,部分原因是因为它很大,部分原因是最底层的数据完全没有被使用(所以我想把它删掉。)
所以对象有这样的级别
Account: {name: name, id: id,
school: {name: name, id: id,
classroom: {name: name, id: id } } }
所以我试图简单地切掉这个物体内的教室水平 - 请记住,大约有一百个帐户,所以有很多。)
我之前收到了一个很好的答案,只能过滤到一个对象(For send),如此
$scope.ids = $scope.myScope.map( function(obj){
return obj.id;
});
我想知道,是否可以使用array.map来说除教室以外的所有内容?或者我应该以不同的方式接近这个?
答案 0 :(得分:0)
一个迭代解决方案是遍历每个并删除像这样的课堂对象
obj = {"Account": {"name": "name", "id": "id",
"school": {"name": "name", "id": "id",
"classroom": {"name": "name", "id": "id" } } }}
for (key in obj){
try{
delete obj[key].school.classroom
}
catch(err){
console.log("didn't have classroom object")
}
}
这具有线性复杂性,但这是最好的解决方案..不确定。我也要从中学习