🎶 Sym - 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台

📕 链滴笔记 - 一款桌面端笔记应用,支持 Windows、Mac 和 Linux

🎸 Solo - B3log 分布式社区的博客端节点,欢迎加入下一代社区网络

♏ Vditor - 一款浏览器端的 Markdown 编辑器

Array - initialize2DArray

2019-05-04

描述

根据给定的宽、高和值初始化一个二位数组。

提示

  • 使用 Array.from() 创建数组
  • 使用 Array.prototype.map() 为 h 行中的每一行生成包含 w 个元素的数组
  • 使用 Array.prototype.fill() 为数组中的元素赋值 
  • 如果没有提供值的话,其默认值为 null

代码

const initialize2DArray = (w, h, val = null) =>
  Array.from({ length: h }).map(() => Array.from({ length: w }).fill(val));

示例

生成一个 2*2 的数组,其每个元素的默认值为 0:

initialize2DArray(2, 2, 0); // [[0,0], [0,0]]

返回总目录

每天 30 秒系列之 JavaScript 代码


欢迎注册黑客派社区,开启你的博客之旅。让学习和分享成为一种习惯!

1 评论
wizardforcel • 2020-03-11
回复 删除

给个 python 版的:

mat = [[0] * w for _ in range(h)]

JS 没有 range 也没有 Array.repeat 就麻烦死了。。