Задать вопрос
@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 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 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;
  }, []);
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
OfferCase Москва
от 400 000 ₽
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
Future Москва
от 50 000 до 70 000 ₽