// эмулируем jQuery
$ = {
post: function(url, data, callback) {
var data = '{"id":100500,"rus":"гыгы"}';
setTimeout(function(){ callback(data) });
},
proxy: function(fn, context) {
return fn.bind(context);
}
};
function GetRusMaterial(d) {
var d1 = {id:0,rus:""};
$.post("/bin/cms/api.php",{action: "GetRusmaterial", param1:d}, $.proxy(function(data){
var d2 = JSON.parse(data);
this.id = d2.id;
this.rus = d2.rus;
alert('Новое значение:' + d1.id);
},d1));
alert('Начальное значение: ' + d1.id);
return d1;
};
GetRusMaterial(1);
Не вижу никаких противоречий.