长话短说,我正在寻找一种使用 ES6 创建和填充 2D 数组的方法,以避免for
循环。创建的数组应包含全 0。我尝试了很多不同的方法,所以我无法发布所有这些方法。
var [r, c] = [5, 5];
var m = Array(r).fill(Array(c).fill(0));
这可行,但它创建了同一数组的一堆实例,并添加切片Array(r).fill(Array(c).fill(0).slice());
也没有帮助。
我还尝试创建空数组,然后循环它们,但这是一个完全不同的问题,你显然不能forEach()
or map()
一个空数组,我什至无法有效地循环遍历一个已填充的数组。
我在这里错过了什么吗?大量的 for 循环是解决这个问题的最佳方法吗?它看起来真的很乱而且太长。任何帮助表示赞赏。
这样做对我有用:
var [r, c] = [5, 5];
var m = Array(r).fill().map(()=>Array(c).fill(0));
基本上只是用一个虚拟值填充它,这样你就可以映射它
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)