const defaultObj = [
{
id: 5310,
прочие свойства: значения
},
];
const merge = require('lodash/merge');
const createList = (data = {}, count = 1) => {
const dataObj = {
id: data.id || defaultObj.id,
// разные другие поля
};
const preparedObj = merge(defaultObj, dataObj);
const preparedObjList = cloneObject(preparedObj, count);
return preparedObjList;
};
const cloneObject = (o, count) => {
const objects = new Array(count).fill(o);
return objects.map((obj, index) => ({ ...obj, id: obj.id + index }));
};
затем вызываю
const result = createList({id: 44}, 2);
console.log(result)
[{...}, {...}]
разворачиваю
0: {0: {объект со свойствами defaultObj}, id: 44, name: undefined и т.д все свойства с undefined}
merge
тоже не как мне нужно объединил объекты... У меня при таком раскладе получилось на выходе 2 объектаdefaultObj
где уже заполнены поля объекта по умолчанию, но если нужно поменять какое-то поле я тогда в функции cloneObject
указываю какие поля необходимо поменять и указываю сколько похожих объектов создать ). Только id
нужно увеличивать всегда const merge = require('lodash/merge');
const createList = (data = {}, countCampaigns = 1) => {
const dataObj = [{
id: data.id || defaultObj.id,
// разные другие поля
}];
const preparedObj = merge(defaultObj, dataObj);
const preparedObjList = cloneObject(preparedObj, countCampaigns);
return [...preparedObjList];
};
000
не получиться, можно ли как-то силами moment это предугадать? 03.05.49230
, может и выводиться правильно, но как тогда выводить, чтобы год отображался корректно? let n = 12;
export default function getData(data) {
n++;
... код в котором я передаю n дальше
const n = [12].reduce((acc, i) => i + 1);
потом вывожу n каждый раз