Я использую JSON для разрабатываемого веб-приложения. Но по разным причинам мне нужно создать «объекты», которые уже определены в клиентском скрипте на основе ответа JSON на вызов службы. Для этого я хотел бы использовать выражение регулярного выражения для вставки «новых» операторов в ответ JSON.
function Customer(cust)
{
this.Name = null;
this.ReferencedBy = null;
this.Address = null;
if (cust != null)
{
this.Name = cust.Name;
this.ReferencedBy = cust.ReferencedBy;
this.Address = cust.Address;
}
}
Ответ JSON возвращается службой ASP.NET AJAX и содержит член «__type», который можно использовать для определения типа объекта и вставки оператора «new».
Образец JSON:
{"__type":"Customer", "ReferencedBy":{"__type":"Customer", "Name":"Rita"}, "Name":"Joseph", "Address":"123 {drive}"}
Результирующая строка будет выглядеть так:
new Customer({"ReferencedBy":new Customer({"Name":"Rita"}), "Name":Joseph", "Address":"123 {drive}"})
Пока я получил это, но он не работает с участником ReferencedBy.
спичка:
({"__type":"Customer",)(.*?})
заменить:
new Customer({$2})