Javascript 如何从angularjs中的对象中删除空键?
我有一个JSONarray看起来像这样Javascript 如何从angularjs中的对象中删除空键?,javascript,angularjs,html,filter,Javascript,Angularjs,Html,Filter,我有一个JSONarray看起来像这样 { "TotalMemory": [{ "key": "TotalMemory", "values": [ [118, 10] ] }], "Freememory": [{ "key": "Freememory", "values": [
{
"TotalMemory": [{
"key": "TotalMemory",
"values": [
[118, 10]
]
}],
"Freememory": [{
"key": "Freememory",
"values": [
[121, 10]
]
}],
"BufferSize": [{
"key": "BufferSize",
"values": [
[123, 10]
]
}],
"TotalSwapMemory": [{
"key": "TotalSwapMemory",
"values": [
[125, 10]
]
}],
"UsedSwapMemory": [{
"key": "UsedSwapMemory",
"values": [
[127, 10]
]
}],
"FeeSwapMemory": [{
"key": "FeeSwapMemory",
"values": [
[129, 10]
]
}],
"": [{
"key": "",
"values": []
}]
}
我需要删除最后一项是空的。我遵循了,但这不起作用
$scope.displayData = $scope.displayData.filter(function() { return true; });
console.log(angular.toJson($scope.displayData));
你可以使用和,就像这样
Object.keys($scope.displayData).forEach(function(key) {
if (!key) {
delete $scope.displayData[key];
}
});
$scope.displayData
是对象
,是数组方法,没有。filter
方法您的结构不是数组
,而是带有键(属性)和值的对象
要删除空项,只需使用:
删除$scope.displayData[“”)代码>
如果$scope.displayData[“”]
不存在,这将不会出错。为什么不使用lodash或下划线,\u拒绝功能我们不能使用javascript直接删除它吗?它是JSONArray还是JSONObject??