zugreifen Ich versuche, Daten zu bekommen und zu analysieren, aber ich weiß nicht, wie man wartet, bis alle obigen Anweisungen gemacht werden.Warum kann ich nicht Objektwert in Javascript
Hier ist mein Code:
function get_unicodes() {
var deferred = $q.defer();
var result = {'seen': [], 'all': []};
var unicode_seen_raw = window.localStorage.getItem('LISTE_CARACTERES').split(" ");
var unicode_all = window.localStorage.getItem('CAROBJECTIF').split(" ");
for (value in unicode_seen_raw) {
$http({
method: 'post',
url: DataService.URL,
headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' },
data: $httpParamSerializerJQLike({ no_requete: 16, sParam: value })
}).then(function (res, data) {
result['seen'].push(JSON.parse(res['data']['data'])[0]);
});
}
for (value in unicode_all) {
$http({
method: 'post',
url: DataService.URL,
headers: { 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8' },
data: $httpParamSerializerJQLike({ no_requete: 16, sParam: value })
}).then(function (res, data) {
result['all'].push(JSON.parse(res['data']['data'])[0]);
});
}
console.log(result);
console.log(result['seen']);
deferred.resolve(result);
return deferred.promise;
}
function update_biblio() {
get_unicodes().then(function (res) {
// stuff I want to do with res but can't
}
}
Hier ist, was ich bekommen:
nach einiger Forschung, die ich, dass console.log()
zu der Zeit gefunden wird result['seen']
‚s-Wert bezeichnet nicht ist einstellen. Aber ich weiß nicht, wie ich das beheben soll.
Sollte ich eine Funktion aufrufen, um zu warten, bis meine http-Anfragen erledigt sind oder sie eine bessere Möglichkeit sind, es zu tun?