我正在尝试遍历一个数组来查询我的订单类以找到一个关联的id,然后循环遍历 另一个有这个id的班级。
原始数组中有4个元素,它们应该匹配一个id,每个id在第3个查询中都有43个元素。
然而,我没有从每个id的第3个查询中获得43个结果,而是得到12 * 43个结果。
我无法弄清楚我的代码是如何错误的,我也尝试过containsIn也没有任何结果。
$scope.positionIds = [];
$scope.dataDictionary = {};
$scope.quotes = function () {
for (var i=0; i < $scope.positions.length; i++){
var positionNow = $scope.positions[i];
var orderQuery = new Parse.Query('Order');
orderQuery.equalTo('objectId', positionNow );
orderQuery.find({
success: function(result) {
console.log(result);
for (var j=0; j < result.length; j++){
$scope.positionIds.push(result[j].attributes.positionId);
}
for (var k=0; k < $scope.positionIds.length; k++){
var portfolioQuery = new Parse.Query('DayPosition');
portfolioQuery.limit(1000);
var positionSecond = $scope.positionIds[k];
portfolioQuery.equalTo('positionId', positionSecond);
console.log("positionId", $scope.positionIds[k]);
portfolioQuery.find({
success: function(result) {
console.log("count", result.length);
for (var h=0; h < result.length; h++){
// console.log("count", result.length);
console.log("double inside data time", result[h].createdAt);
console.log("double inside data id", $scope.positionIds[k]);
console.log("value", result[h].attributes.currentValue);
var values = [];
values.push([result[h].createdAt,
result[h].attributes.currentValue]);
if (!$scope.dataDictionary[result[h].attributes.positionId]){
$scope.dataDictionary[result[h].attributes.positionId] = [];
} else {
$scope.dataDictionary[result[h].attributes.positionId].push(values);
}
}
console.log("final data", $scope.dataDictionary);
},
error: function (error) {
console.log("this error", error);
}
});
}
},
error: function (error) {
console.log("this error", error);
}
});
}
};