在 javascript 中,我将如何创建一个给定大小的空数组
伪代码:
X = 3;
createarray(myarray, X, "");
输出:
myarray = ["","",""]
在 javascript 中,我将如何创建一个给定大小的空数组
伪代码:
X = 3;
createarray(myarray, X, "");
输出:
myarray = ["","",""]
1)要创建不能迭代的新数组,可以使用数组构造函数:
Array(100)
或者 new Array(100)
2)您可以创建新数组,可以像下面这样迭代:
a)所有 JavaScript 版本
Array.apply(null, Array(100))
b)从 ES6 JavaScript 版本开始
[...Array(100)]
Array(100).fill(undefined)
Array.from({ length: 100 })
您可以像下面这样映射这些数组。
Array(4).fill(null).map((u, i) => i)
[0, 1, 2, 3]
[...Array(4)].map((u, i) => i)
[0, 1, 2, 3]
Array.apply(null, Array(4)).map((u, i) => i)
[0, 1, 2, 3]
Array.from({ length: 4 }).map((u, i) => i)
[0, 1, 2, 3]
var arr = new Array(5);
console.log(arr.length) // 5
我们Array.from({length: 500})
从 2017 年开始使用。
从 ES5 开始(给出这个答案时):
如果你想要一个空的undefined
元素数组,你可以简单地做
var whatever = new Array(5);
这会给你
[undefined, undefined, undefined, undefined, undefined]
在较新的版本中,这现在给出
[empty × 5]
请参阅有关空和未定义之间区别的其他问题。
如果你想用空字符串填充它,你可以这样做
whatever.fill('');
这会给你
["", "", "", "", ""]
如果你想在一行中完成:
var whatever = Array(5).fill('');
尝试使用while
循环,Array.prototype.push()
var myArray = [], X = 3;
while (myArray.length < X) {
myArray.push("")
}
或者,使用 Array.prototype.fill()
var myArray = Array(3).fill("");