У меня есть следующий массив объектов:
var addresses = [
{ ResourceId: 2,
OfficeAddress:
'20 Main Street\r\nRiverside\r\nUSA' },
{ ResourceId: 191,
OfficeAddress:
'20 Main Street\r\nRiverside\r\nUSA' },
{ ResourceId: 204,
OfficeAddress:
'20 Main Street\r\nRiverside\r\nUSA' }
]
Я хочу попробовать разбить строку на их собственные пары ключ / значение в объекте, вот так:
[
{ ResourceId: 2,
address1: "20 Main Street",
address2: "Riverside",
address3: "USA"
},
{ ResourceId: 191,
address1: "20 Main Street",
address2: "Riverside",
address3: "USA"
},
{ ResourceId: 204,
address1: "20 Main Street",
address2: "Riverside",
address3: "USA"
}
]
Я мог бы сделать что-то вроде этого, если бы это было ПРОСТО нормальной строкой:
let output = addresses.split("\r").reduce(function(
obj,
str,
index
) {
let strParts = str.split(":");
obj[strParts[0].replace(/\s+/g, "")] = strParts[1];
return obj;
},
{});
Кто-нибудь знает, как я мог бы перебрать каждый объект в массиве и разбить строку на 3значение адреса / ключи?Карта. Возможно?