【发布时间】:2017-03-13 13:51:36
【问题描述】:
我试图调用数组中唯一的对象,但这总是返回未定义的。如果我记录整个数组,我可以看到其中的所有内容,如果我调用它的对象,它返回未定义!
代码:
var pos = [];
this code is inside a function____
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
pos.latlng = {
lat: position.coords.latitude,
lng: position.coords.longitude
};
console.log(position.coords.latitude);
});
}
console.log(pos.latlng); <--- undefined
console.log(pos); <--- works fine
console.log(pos[0].latlng); <--- also tried this
console.log(pos) 的结果;
Object
latlng : Object
lat : 52.136624499999996
lng : 5.3469106
__proto__:Object
__proto__:Object
【问题讨论】:
-
关于尝试访问外部 Asynchroons 函数 内的值集的老问题!
-
加上
pos是一个数组而不是一个对象。你使用它的方式应该声明为:var pos = {}. -
我也试过这个!也返回未定义。
-
请添加
console.log(pos); <--- works fine的结果。 -
编辑了帖子,就在里面
标签: javascript arrays object