Javascript:删除对象中包含数组的对象

Javascript:删除对象中包含数组的对象,javascript,arrays,node.js,angularjs,object,Javascript,Arrays,Node.js,Angularjs,Object,亲爱的朋友们: 我有一个问题,我正忙于一个节点角度的应用程序。 要保存和删除表单的部分,我使用对象: $scope.entries = { events:{ save:{}, del:[], save_count:0}, actions:{ save:{}, del:[], save_count:0}, packages:{ save:{}, del:[], save_count:0} } 例如,现在我有一

亲爱的朋友们:

我有一个问题,我正忙于一个节点角度的应用程序。 要保存和删除表单的部分,我使用对象:

$scope.entries = {
  events:{
    save:{},
    del:[],
    save_count:0},

  actions:{
    save:{},
    del:[],
    save_count:0},

  packages:{
    save:{},
    del:[],
    save_count:0}
}
例如,现在我有一个这样的对象(保存在包中)

所以当我想删除密钥时:1398944325398 我有以下代码:

delete $scope.entries.package.save['1398944325398'];
但是,当我将此对象$scope.entries发送到我的节点服务器时,我得到以下结果:

packages:{
 del: Array[0],
 save:{
  1398944325398:{
   events: Array[0]
  },
  1398949842824:{
   action: 6441,
   budget: 1020,
   events: [153, 12422],
   id: 21
   name: "Jeffrey2"}
 },
 save_count: 0
}
如果我的对象中有数组,为什么javascript不删除该对象? 将数组设置为“null”
不会解决问题

这是您的方案,对吗?似乎在浏览器中做了预期的事情为什么你把代码放在语法错误的地方,或者这是一个真实的例子?就像@AndreyBorisko问的,这是一个真实的例子吗?您正试图从“package”中删除,但该属性名为“packages”?如果我将属性从对象更改为以下字符串,这才是真正的问题:$scope.entries.package.save['1398944325398']=“test”;我会得到一个角度误差:看起来我的手臂有问题$watch@JeffreyBouva您是将其称为
$scope.entries.packages
还是
$scope.entries.package
?(结尾缺少的“s”)。这有很大的不同
packages:{
 del: Array[0],
 save:{
  1398944325398:{
   events: Array[0]
  },
  1398949842824:{
   action: 6441,
   budget: 1020,
   events: [153, 12422],
   id: 21
   name: "Jeffrey2"}
 },
 save_count: 0
}