NapalmRain, колбэки лучше вынести в методы:
var Model = function(modelName) {
var url = '/data/' + modelName + '.json';
$.ajax({
type: 'POST',
dataType: 'json',
url: url,
async: true,
success: this.onSuccess.bind(this),
fail: this.onError.bind(this)
});
};
Model.prototype = {
Data: null,
onSuccess: function(response) {
this.Data = response;
},
onError: function() {
alert('Error');
}
};
var table = new Model('table');
Тогда и self не нужен будет.