在JavaScript中我如何创建给定大小的空数组
伪代码:
X = 3;
createarray(myarray, X, "");
输出:
myarray = ["","",""]
Answers:
var arr = new Array(5);
console.log(arr.length) // 5
in javascript how would I create an empty array of a given size。这样就解决了这个问题。
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]
Array(10000)用empty x 10000?
console.log(Array(10000).length)但是如果运行Array(10000).forEach((u, i) => console.log(i)),您将没有输出
Array.apply('x', Array(10))实际上是[undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined, undefined]
我们Array.from({length: 500})从2017年开始使用。
尝试使用while循环,Array.prototype.push()
var myArray = [], X = 3;
while (myArray.length < X) {
myArray.push("")
}
或者,使用 Array.prototype.fill()
var myArray = Array(3).fill("");
.fill()是一种优雅的单缸解决方案。谢谢!
[...Array(500)]为此,我们将从2018年开始使用。
(() => { let n = []; for(var i=0;i<500;i++){y.push("");} return n; })()。
从ES5开始(给出此答案时):
如果您想要一个空undefined元素数组,则只需
var whatever = new Array(5);
这会给你
[undefined, undefined, undefined, undefined, undefined]
然后,如果您希望将其填充为空字符串,则可以执行
whatever.fill('');
这会给你
["", "", "", "", ""]
如果您想在一行中执行此操作:
var whatever = Array(5).fill('');
new Array(2)而我得到的[ <2 empty items> ]不是[undefined, undefined]。.map在前者上使用无效。但是,我可以使用for...of循环对其进行迭代。如果使用文字符号创建新数组,a = [undefined, undefined]则可以.map在其上使用。
Array(5)。您将看到以下输出:[undefined x 5]。