как я могу переписать pu sh с картой, выполнив часть? - PullRequest
2 голосов
/ 01 марта 2020

Я хотел бы знать, возможно ли изменить этот pu sh l oop с помощью простой карты.

цель состоит в том, чтобы создавать куски из массива объектов на основе количества столбцы и строки сетки.

например: если у меня две строки и две колонки массив объектов разделен на массив (chunks = []) следующим образом:

 const row = 2;
 const col = 2;
 const pages = [
       {id:'one', name:'page_1', active:false},
       {id:'two', name:'page_2', active:false},
       {id:'three', name:'page_2', active:false},
       {id:'four', name:'page_4', active:false},
       {id:'five', name:'page_5', active:false},
    ]

«Куски» должны быть такими:

 let chunks = [
   //grid 1 whit max col * row element
   [
       {id:'one', name:'page_1', active:false},
       {id:'two', name:'page_2', active:false},
       {id:'three', name:'page_2', active:false},
       {id:'four', name:'page_4', active:false},
   ],
  //grid 1 whit max col * row element
   [
       {id:'five', name:'page_5', active:false}, 
   ],
 ]

Я сделал это так и это хорошо работает Но мне интересно, можно ли все редактировать и улучшать, используя только карту вместо пу sh.

    const pages = [
       {id:'one', name:'page_1', active:false},
       {id:'two', name:'page_2', active:false},
       {id:'three', name:'page_2', active:false},
       {id:'four', name:'page_4', active:false},
       {id:'five', name:'page_5', active:false},
    ]
    const row = 2;
    const col = 2;
    let rowIndex = 0;
    let chunkIndex = 0;
    let chunks = [];
    while (row !== rowIndex) {
      chunks.push(page.slice(chunkIndex, chunkIndex + col));
      chunkIndex += col;
      rowIndex += 1;
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...