В java вы можете ссылаться на внешний класс, указав его имя, а затем на него.Установка переменной после успешного вызова ajax
class A {
void A() {
}
class B {
void B() {
A.this.A();
}
}
}
Теперь я пытаюсь сделать что-то подобное в javascript. Bellow У меня есть конструктор, который делает вызов ajax. Этот вызов ajax, если он успешно задает метод get и активы AssetManager.
function AssetManager(path) {
this.assets = {};
this.get = function(tag,name) {
return 0;
};
$.ajax({
url: path,
dataType: 'json',
success: function(o) {
if (o.sprite) {
var keys = Object.keys(o.sprite);
for (var i = 0; i < keys.length; i++) {
var obj1 = keys[i];
AssetManager.this.assets.sprite[obj1] = new Image();
AssetManager.this.assets.sprite[obj1].src = o.sprite[obj1];
}
}
AssetManager.this.get = function (tag, name) {
return assets[tag][name];
}
}
});
}
Почему вы положили вызов ajax внутри определения класса? – gurvinder372
'AssetManager.this'? Разве он не выделял ничего в консоли? – Rayon
@ gurvinder372 Чтобы он мог быть запущен с объектом, он был заложен – Thatsuperfly