AngularJs:模型对象被转换为数组

AngularJs: model object gets converted to an array

我发现了一个奇怪的问题并且花费了没有结果的时间。

在我的控制器中,我有一个对象声明为

$scope.brfdet = { iJobId: $scope.job.iJobId, iAppType: null, dEarlyShipmentDate: null, dStockdate: null, dFromDate: null, dToDate: null};
console.log('$scope.brfdet: ', $scope.brfdet);

控制台日志正确显示如下:

$scope.brfdet: { iJobId: 3245, iAppType: null, dEarlyShipmentDate: null, dStockdate: null, dFromDate: null, dToDate: null};

然而,就在我提交数据之前,我看到变量的值如下。

$scope.brfdet: [dFromDate: "01/01/2020", dToDate: "01/01/2021", iAppType: "1"]

我不知道为什么会这样。请帮忙。

更新:

我能想出来。 $scope.brfdet 在 AJAX 调用中被设置为空数组 - API.

中的错误

$scope.brfdet 似乎链接了其他内容。它是否在其他任何地方使用(例如在视图中)? 你如何提交数据?您的代码在“控制台日志”输出和提交之间发生了什么?