@KitCat12

Почему отличаются данные в массиве объектов при простом выводе и обращении по индексу?

У меня есть функция для вставки блока
spoiler
function insertRankedBlocks(graphs) {
    graphs.forEach(element => {
        $('.ranked-games .items').append(
        `<div class="item clear">\
            <div class="single-chart">\
            <svg viewBox="0 0 36 36" class="circular-chart ${element.class}">\
                <path class="circle-bg"\
                d="M18 2.0845\
                    a 15.9155 15.9155 0 0 1 0 31.831\
                    a 15.9155 15.9155 0 0 1 0 -31.831"\
                />\
                <path class="circle"\
                stroke-dasharray="${element.stroke}, 100"\
                d="M18 2.0845\
                    a 15.9155 15.9155 0 0 1 0 31.831\
                    a 15.9155 15.9155 0 0 1 0 -31.831"\
                style="display: none;"/>\
                <text x="18" y="20.35" class="percentage">${element.number}</text>\
            </svg>\
            </div>\
            <p class="text">${element.text}</p>\
        </div>` 
        )
    });
    animate();
}


Есть такой массив объектов, который заполняется и потом передается в функцию выше
spoiler
let graphs = [
    {
        class: "green",
        stroke: 0,
        number: 0,
        text: "Wins"
    },
    {
        class: "red",
        stroke: 0,
        number: 0,
        text: "Loses"
    },
    {
        class: "blue",
        stroke: 0,
        number: 0,
        text: "Total"
    },
    {
        class: "blue",
        stroke: 0,
        number: 0,
        text: "Mastery"
    }
]


При выводе массива объектов в самой функции добавления блоков получаю правильно заполненный объект
61e6579254628051621094.png

При обращении по индексу объект уже заполнен неправильно, хотя если открыть его, то данные в нем верные
61e658cdbc07c153445042.png

Собственно вопрос. Почему при выводе массива объектов данные верные, а при обращении по индексу нет?
  • Вопрос задан
  • 52 просмотра
Пригласить эксперта
Ответы на вопрос 1
dollar
@dollar
Делай добро и бросай его в воду.
Попробуйте в консоли такое:
obj={x:0}; console.log(obj); obj.x=123;

Надеюсь, понятно, что здесь произошло.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы