Javascript - 访问对象属性
问题描述:
我有一个Javascript数据对象与我需要显示的所有数据(我从API获取数据)。Javascript - 访问对象属性
我不明白为什么我不能访问它的属性。这是我的数据(从执行console.log):
[Object, Object, Object, Object]
0: Object
distancia: "2.69"
id_servicio: "1"
latitud: "42.2261474"
longitud: "-8.7604453"
service_data: Array[1]
1: Object
distancia: "0.65"
id_servicio: "2"
latitud: "42.2272562"
longitud: "-8.7340278"
service_data: Array[1]
2: Object
distancia: "2.36"
id_servicio: "3"
latitud: "42.2338588"
longitud: "-8.7030846"
service_data: Array[1]
3: Object
distancia: "4.42"
id_servicio: "4"
latitud: "42.2154313"
longitud: "-8.6754155"
service_data: Array[1]
现在我有一个循环accesing的属性,但它抛出一个错误。我已经检查每一个组合,但没有任何工程:
for (i = 0; i<=datos.length; i++) {
var servicio = datos[i];
var nLatitud = servicio.latitud;
var nLongitud = servicio.longitud;
console.log(servicio);
var auxll = new google.maps.LatLng(nLatitud,nLongitud);
var marker = new google.maps.Marker({
position: myLatlng,
map: map
});
marker.setMap($scope.map);
}
而且,这是我得到的错误:
TypeError: Cannot read property 'latitud' of undefined
at generarMapa (myDashboardController.js:134)
at myDashboardController.js:94
at ionic.bundle.js:18899
at processQueue (ionic.bundle.js:23394)
at ionic.bundle.js:23410
at Scope.parent.$get.Scope.$eval (ionic.bundle.js:24673)
at Scope.parent.$get.Scope.$digest (ionic.bundle.js:24484)
at Scope.parent.$get.Scope.$apply (ionic.bundle.js:24778)
at done (ionic.bundle.js:19191)
at completeRequest (ionic.bundle.js:19363)
答
更改for
语句。它的访问之外出数组由<=
for (i = 0; i<=datos.length; i++) {
到
for (var i = 0; i < datos.length; i++) {
+1
我只是一个白痴。哦,上帝,离子框架的错误并不准确......我专注于访问对象。上帝,非常感谢! –
经典差一错误... – deceze
嗯,有时候错误描述混淆你的头脑,遗憾的困惑:_ –