对api的调用返回了这个json:
[
{
"RESULT": {
"TYPES": [
"bigint",
"varchar",
"varchar",
"varchar",
"varchar",
"varchar",
"date",
"varchar",
"int",
"int",
"varchar"
],
"HEADER": [
"kvk",
"bedrijfsnaam",
"adres",
"postcode",
"plaats",
"type",
"anbi",
"status",
"kvks",
"sub",
"website"
],
"ROWS": [
[
"273121520000",
"Kinkrsoftware", <-- this is the value i want
"Oude Trambaan 7",
"2265CA",
"Leidschendam",
"Hoofdvestiging",
null,
null,
"27312152",
"0",
null
]
]
}
}
]
我无法更改api代码。
我正在使用Angular,但我看不到能够访问这些值。
这是我的控制者:
.controller('MainCtrl', function($scope, $http, $log, kvkInfo) {
kvkInfo.success(function(status, data) {
$scope.name = status;
$scope.bedrijf = data;
$scope.status = status;
});
});
我试过了
data.RESULT.ROW,data.RESULT.ROW [1],data.RESULT [0] .ROW,data.RESULT [0] .ROW [1],data.ROW [1]
我怎样才能得到这个元素?
答案 0 :(得分:25)
你得到的是[
,所以它是一个数组。所以你需要data[0]
。
此数组的第一个元素(data[0]
)是一个具有RESULT属性的对象(以{
开头)。所以你可以使用data[0].RESULT
。
RESULT属性的值是另一个具有ROWS
属性的对象(注意最后的S
)。所以你可以使用data[0].RESULT.ROWS
。
ROWS的值是一个数组,包含另一个数组,因此您需要data[0].RESULT.ROWS[0][1]
。
答案 1 :(得分:2)
你的api结果被包装在一个数组中,所以你必须将它的第一个元素保存到范围而不是整个数组。