在 JavaScript 中,创建包含 1 到 N 的数组有以下几种方法:
- 使用 for 循环
var foo = [];
for (var i = 1; i <= N; i++) {
foo.push(i);
}
这种方法是最简单直接的方法,但效率相对较低。
- 使用
Array.from()
和keys()
方法
Array.from(Array(10).keys());
//=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
这种方法使用 Array.from()
方法将一个类数组对象转换为数组,并使用 keys()
方法获取该对象的所有键。
- 使用
Array.from()
和map()
函数
Array.from({ length: 10 }, (_, index) => index + 1);
//=> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
这种方法使用 Array.from()
方法创建一个具有指定长度的数组,并使用 map()
函数为每个数组元素赋值。
哪种方法最好取决于您的个人喜好和代码风格。如果数组长度较小,则可以使用 for 循环。如果数组长度较大,则可以使用 Array.from()
和 keys()
方法或 Array.from()
和 map()
函数来提高效率。
此外,在 ES6 中,还有一种使用扩展运算符 (...
) 的方法来创建包含 1 到 N 的数组,如下所示:
[...Array(10).keys()];
//=> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
这种方法是最简洁的方式,但仅在 ES6 及以上版本中可用。