Задать вопрос
@gotohell

Как правильно обработать массив?

Всем привет! В общем я собрал массивы:
var coordPaM1 = [];
var coordPaM2 = [];

$('.table-data').each(function(index) {
    coordPaM1[index] = {
      y: $(this).data('pascalmax'), x: $(this).data('rashodmin')
    },
    coordPaM2[index] = {
      y: $(this).data('pascalmin'), x: $(this).data('rashodmax')
    }
});


Поместил их в две разные переменные!
Вывожу их в график так:
new Chartist.Line('.chart', {
  series: [
    coordPaM1, coordPaM2
  ]
}


По моей задумке он должен был выводить по одному объекту из каждой переменной. Скрипт выводит сначала все объекты из переменной coordPaM1, потом из coordPaM2. Как обработать их так что бы они выходили поочередно с каждой переменной по объекту.

То есть выходило так:
coordPaM1 (Объект)
coordPaM2 (Объект)
coordPaM1 (Объект)
coordPaM2 (Объект)

codepen
  • Вопрос задан
  • 218 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
edtoken
@edtoken
Full-stack Javascript/Python Developer
var nodes = Array.prototype.slice.call(document.querySelectorAll('.table-data'));
var series = nodes.reduce(function(memo, item){
    memo[0].push({y:item.dataset.pascalmax, x:item.dataset.rashodmin});
    memo[1].push({y:item.dataset.pascalmin, x:item.dataset.rashodmax});
    return memo;
  }, [[], []]);

или:
var nodes = Array.prototype.slice.call(document.querySelectorAll('.table-data'));
var series = nodes.reduce(function(memo, item){
    memo.push({y:item.dataset.pascalmax, x:item.dataset.rashodmin});
    memo.push({y:item.dataset.pascalmin, x:item.dataset.rashodmax});
    return memo;
  }, []);
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы