您好,我正在嘗試獲取每個循環的位置。 Yahoo Placemaker用於從數組的文本變量中獲取位置。在每個循環中,都將位置發送到外部函數,但我沒有獲取值。有誰知道做錯了什麼?謝謝!從異步回調中獲取值
function replace_undefined(array, text_array) {
console.log(text_array);
for (i = 0, l = text_array.length; i < l; i++) {
var text = array[i].text;
Placemaker.getPlaces(text, function (o) {
console.log(o);
if ($.isArray(o.match)) {
if (o.match[0].place.name == "Europe" || o.match[0].place.name == "United States") {
var location = o.match[1].place.name;
getLocation(location);
}
if ($.isArray(o.match)) {
if (o.match[0].place.name !== "Europe") {
var location = o.match[0].place.name;
getLocation(location);
}
}
}
if (!$.isArray(o.match) && o.error == "no locations found") {
var location = "";
getLocation(location);
}
if (!$.isArray(o.match) && o.error !== "no locations found") {
var location = o.match.place.name;
getLocation(location);
}
});
}
function getLocation(n) {
return function() {
console.log('Location: ' + n);
};
}
}
我沒有時間來進一步幫助你,但你知道你正在使用[strict(un)equality](http://jonkruger.com/blog/2009/04/07/strict- equals-triple-equals-operators-in-javascript /)這裏'!==',不是嗎? –
是的,我知道@MarceloAssis –