function GetRusMaterial(d) {
var d1 = {id:0,rus:""};
$.post("/bin/cms/api.php",{action: "GetRusmaterial", param1:d}, $.proxy(function(data){
var d2 = eval('(' + data + ')');
this.id = d2.id;
this.rus = d2.rus;
alert(this.id);
},d1));
alert(d1.id);
return d1;
};
Вот такой вот код не выдает никаких ошибок, однако как только мы выходим за пределы функции, в которой мы пытаемся изменить объект, переданный как контекст в нашу callback-функцию, оказывается, что данный объект изменен не был. Другими словами, первый alert выдает одно значение, а второй alert опять сообщает, что d1.id равно 0.