Замена ключа в массиве

251
17 августа 2017, 22:20

Имеется JS массив вида

var cashFlowData = [{
    period: "Beginning\nBalance",
    amount: 50000
}, {
    period: "Jan",
    amount: 17000
}, {
    period: "Feb",
    amount: 14000
}, {
    period: "Mar",
    amount: -12000
}];

Каким образом можно изменить ключ, например, для 3 элемента, что бы было вот так:

var cashFlowData = [{
    period: "Beginning\nBalance",
    amount: 50000
}, {
    period: "Jan",
    amount: 17000
}, {
    period: "Feb",
    summary: 14000
}, {
    period: "Mar",
    amount: -12000
}];
Answer 1

Этот код сделает ровно то, что вы просите. Дальше можете развивать эту мысль как нужно.

cashFlowData[2].summary = cashFlowData[2].amount
delete cashFlowData[2].amount

UPD

Касательно вставки, посмотрите на функцию splice

Первый параметр - индекс начала изменения массива, второй параметр - количество удаляемых элементов, третий и последующие параметры - элементы для вставки.

В этом примере мы вставляем на позицию 0 объект с январем и 100500, при этом ничего не удаляя:

cashFlowData.splice(0, 0, {period: "Jan", summary: 100500})
READ ALSO
Как создать свой div для каждого элемента?

Как создать свой div для каждого элемента?

Нужно посчитать количествоromb и для каждого создать отдельный div

215
Отправка json запроса на Corezoid

Отправка json запроса на Corezoid

Изучаю мануал Corezoid и там показано, как через Postman отправить запросЧерез Postman эта задача выполняется успешно, но не получается отправить данных...

282
Uncaught RangeError: Maximum call stack size exceeded

Uncaught RangeError: Maximum call stack size exceeded

Всем привет, выдаёт ошибку, в чём может быть проблема?

326