我有一个从服务提取到控制器的JSON数组。我能够在控制台中显示JSON数组。但是当调用JSON中的特定项时,它会显示undefined
。那么如何正确调用它以便我可以在我的视图中使用它。
控制器:
$scope.onViewLoaded = function() {
callingService.getdata($scope.datafetched);
}
$scope.datafetched = function(response) {
debugger;
if (response) {
$rootScope.mainData = response;
$scope.localizeddataTypes = getLocalizedCollection($scope.mainData);
}
}
$scope.editFunction = function(key) {
console.log($scope.mainData);
debugger;
console.log($scope.mainData.keyValue);
}
此处console.log($scope.mainData);
显示JSON数组,但console.log($scope.mainData.keyValue);
显示为未定义。我的JSON看起来像
{
keyValue: "1234DEF56",
animals: {
name:"dog",
color:"brown"
},
birds:{
name:"canary",
color:"yellow"
}
}
那么,我如何克服这个问题,为什么我将其作为Undefined
。
答案 0 :(得分:3)
只是一个好奇的东西。我觉得该变量中的内容以字符串格式存储,而不是JSON或JavaScript Object。试试这个,看看是否有效?
$scope.mainData = JSON.parse($scope.mainData);
console.log($scope.mainData.keyValue);