如何使用ES6地图功能打印1到100? 注意:不使用任何循环或递归方法,仅使用map函数。
答案 0 :(得分:2)
要解决此问题,您首先需要一个100个值的数组。可以创建并填充一个新的数组,这样我们就可以映射这些值。一旦有了要映射的数组,就可以将数组的索引作为我们要输出的当前数值,但它是基于0的例外。由于索引值是基于0的事实,因此我们需要在结果中加1以得到1-100(而不是0-99)的范围。
new Array(100).fill().map((_, i) => console.log(i + 1));
map函数通常用于基于现有数组返回数组。由于不需要返回数组,因此最好使用forEach()。
new Array(100).fill().forEach((_, i) => console.log(i + 1));
答案 1 :(得分:1)
使用map
:
Array.apply(null, {length: 100}).map((value, index) => index + 1);
使用from
:
Array.from(new Array(100),(val,index)=>index+1);
...并且有很多技术。只是用谷歌搜索“创建范围es6”
甚至更短:
[...Array(100)].map((_, i) => i+1);