initializeNDArray.js

  1. /**
  2. * 使用指定的值初始化一个N维数组。
  3. *
  4. * @since 0.0.1
  5. * @param {object} val - 初始值。
  6. * @param {object} args - 剩余参数。
  7. * @returns {array} 数组。
  8. * @example
  9. *
  10. * initializeNDArray(1, 3); // [1,1,1]
  11. *
  12. * initializeNDArray(5, 2, 2, 2); // [[[5,5],[5,5]],[[5,5],[5,5]]]
  13. */
  14. const initializeNDArray = (val, ...args) =>
  15. args.length === 0
  16. ? val
  17. : Array.from({length: args[0]}).map(() => initializeNDArray(val, ...args.slice(1)));
  18. export default initializeNDArray;