鍍金池/ 問答/HTML/ 求解如何循環(huán)生成這種json

求解如何循環(huán)生成這種json

var c={

         0:[0],
         1:[1,9],
         2:[2,10,18],
         3:[3,11,19,27],
         4:[4,12,20,28,36],
         5:[5,13,21,29,37,45],
         6:[6,14,22,30,38,46,54],
         7:[7,15,23,31,39,47,55,63],
         8:[8,16,24,32,40,48,56,64],
         9:[17,25,33,41,49,57,65],
        10:[26,34,42,50,58,66],
        11:[35,43,51,59,67],
        12:[44,52,60,68],
        12:[53,61,69],
        12:[62,70],
        12:[71],
    }
回答
編輯回答
扯不斷

mockjs

2017年4月5日 18:06
編輯回答
默念
function gen(num) {
  let m = Math.floor(num / 2)
  let result = {}

  for (let i = 0; i < m; i++) {
    result[i] = [...Array(i + 1).keys()].map(j => i + j * m)
  }

  let k = num % 2 ? m + m * m : m * m
  for (let i = m; i < num; i++, k++) {
    result[i] = [...Array(num - i).keys()].map(j => k - j * m).reverse()
  }
  
  return result
}
console.table(gen(16))

效果截圖如下:

clipboard.png

2017年11月11日 06:17