JavaScript как изменить свойство во вложенном массивов

Admin JavaScript, Svelte

Как изменить свойство в массиве вложенного в другой массив данных.

Как в таком массиве данных заменить значение вложенного свойства:

[{…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}, {…}]
0
:
{commission: -0.05, confirmed: true, currency: 'usd', date: '21:20 | 05 декабря 2022', id: 3455, …}
1
:
{commission: -0.04, confirmed: true, currency: 'usd', date: '20:51 | 05 декабря 2022', id: 3453, …}
2
:
{commission: -0.05, confirmed: true, currency: 'usd', date: '20:25 | 05 декабря 2022', id: 3450, …}

Сначала давайте посмотрим как можно сделать это обычным способом:

function toggleAll() {
    Object.values(items).forEach(function (item, index, array) {
        Object.entries(item).forEach(function ([key, value]) {
            if (key === 'confirmed' && value === false) {
                array[index][key] = true;
            } else if (key === 'confirmed' && value === true) {
                array[index][key] = false
            }
        });
    });
}

Другой вариант сделать это так:

function itemsToggle(b) {
    items = items.map(obj => ({
        ...obj,
        confirmed: true
    }));
}

Как создать новый массив данных по такому свойству:

function createNewArrayForUpdate() {
    confirmedArray = [];
    let data = []
    items.forEach(function (item) {
        if (!item.confirmed) {
            data = {
                'id': item.id,
                'confirmed': false,
            }
        } else {
            data = {
                'id': item.id,
                'confirmed': true,
            }
        }
        confirmedArray.push(data)
    });
}
Метки:

У сайта нет цели самоокупаться, поэтому на сайте нет рекламы. Но если вам пригодилась информация, можете лайкнуть страницу, оставить комментарий или отправить мне подарок на чашечку кофе.

Добавить комментарий

Напишите свой комментарий, если вам есть что добавить/поправить/спросить по теме текущей статьи:
"JavaScript как изменить свойство во вложенном массивов"