如何从对象数组中获取属性? [英] How to get property from an array of object ?
问题描述
我在json响应中有对象数组,我想从 includeAssessmentList
数组中获取 riskAssessmentKey
并将该键传递给Post Api后端,我无法获取数组中的属性.我该如何完成这项任务?
I have array of object in json response i want to get riskAssessmentKey
from includeAssessmentList
array and pass that key to backend through Post Api,I am not able to get the property from the array. How can i achieve that task ?
到目前为止尝试过的代码....
So far tried code....
main.js
$scope.deleteAssess = function(){
var assessmentKey = [];
assessmentKey = $scope.rcsaCycleDTO.includeAssessmentList;
for (var i=0; i<assessmentKey.length; i++) {
var riskAssessmentKeys = assessmentKey[i];
console.log(riskAssessmentKeys);
}
RcsaFactory.assessmentDetails(assessmentKey,$scope.rcsaCycleDTO.statusLookUpCode).then(function(){
setConfirmationWinButtons(true, true, true);
$scope.confirmationWin.open().center();
$scope.confirmationWin.close();
});
};
JSON.js
[{includeAssessmentList:
0: {cycleName: "Test startassment1", assessmentName: "Algeria_Angola", scopeType: null,…}
assessmentEndDate: "06/06/2015"
assessmentName: "Algeria_Angola"
assessmentRoleTypeDTOs: []
assessmentStartDate: "06/05/2015"
assessmentStatus: "Draft"
assessmentStatusLookUpCode: "RA_ASES_DRAFT"
availableRolesKey: []
beginTransactionTime: 1433422729000
createWorkerKey: -1066
createWorkerText: "NBKTHMC"
createdTimestamp: 1433495095000
currentFlag: 1
cycleEndDate: "06/06/2015"
cycleName: "Test startassment1"
cycleStartDate: "06/05/2015"
cycleType: "RA_RCSA"
dueDate: "06/26/2015"
endTransactionTime: 1433495095000
erhFlag: null
erhList: null
filteredErhList: null
geoLocationLst: null
legalEntity: null
modifiedTimestamp: 1433422729000
modifiedTimestampString: "06/04/2015"
modifiedUserText: "NBKTHMC"
modifyWorkerKey: -1066
rcsaOwnerWorkerKey: null
rcsaPreparerWorkerKey: null
responseMesg: null
riskAssessmentCycleKey: null
riskAssessmentKey: 87
riskAssessmentRoleTypeKey: null
scopeType: null
selectedRolesKey: []
sourceFeed: 1
statusLookUpCode: "RS_ACTIVE"
}]
推荐答案
在您的 for
循环中,您仅读取数组项,而不是必需的属性 riskAssessmentKey
.试试这个.
In your for
loop you are only reading the array item but not the required property riskAssessmentKey
. Try this.
for (var i=0; i<assessmentKey.length; i++) {
var riskAssessmentKeys = assessmentKey[i].riskAssessmentKey;
console.log(riskAssessmentKeys);
}
如果 includeAssessmentList
始终仅包含一项,则不需要for循环,您可以尝试此操作.
If includeAssessmentList
always contains only one item then you don't need a for loop you can try this.
if ($scope.rcsaCycleDTO.includeAssessmentList && $scope.rcsaCycleDTO.includeAssessmentList.length) {
var riskAssessmentKeys = $scope.rcsaCycleDTO.includeAssessmentList[0].riskAssessmentKey;
}
如果您必须从阵列中读取所有ristAssetKeyKeys,请尝试执行此操作.
If you have to read all the ristAssetKeyKeys from the array then try this.
var riskAssessmentKeys = [];
for (var i=0; i<assessmentKey.length; i++) {
riskAssessmentKeys.push(assessmentKey[i].riskAssessmentKey);
}
这篇关于如何从对象数组中获取属性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!