Предположим, что у меня есть объект foo в моем JavaScript-коде. foo - сложный объект, и он генерируется где-то в другом месте. Как изменить прототип объекта foo?
Моя мотивация устанавливает подходящие прототипы для объектов, сериализованных из .NET в литералы JavaScript.
Предположим, что я написал следующий код JavaScript на странице ASP.NET.
var foo = <%=MyData %>;
Предположим, что MyData является результатом вызова .NET JavaScriptSerializer объекта Dictionary<string,string>.
Во время выполнения это становится следующим:
var foo = [{"A":"1","B":"2"},{"X":"7","Y":"8"}];
Как вы можете видеть, foo становится массивом объектов. Я хотел бы иметь возможность инициализировать foo соответствующим прототипом. Я не хочу изменять Object.prototype и Array.prototype. Как я могу это сделать?