如何创建给定大小的空数组
伪装代码:
X = 3; createarray(myarray, X, "");
产出:
myarray = ["","",""]
尝试使用 while循环,Array.prototype.push()
while
Array.prototype.push()
var myArray = [], X = 3; while (myArray.length < X) { myArray.push("") }
或者,使用 Array.prototype.fill()
Array.prototype.fill()
var myArray = Array(3).fill("");
var arr = new Array(5); console.log(arr.length) // 5
从 ES5开始(在给出这个答案时) :
如果您想要一个 undefined元素的空数组,您可以简单地这样做
undefined
var whatever = new Array(5);
这会给你
[undefined, undefined, undefined, undefined, undefined]
在更新的版本中,现在给出了
[empty × 5]
关于空和未定义之间的区别,请参见 另一个问题。
如果你想用空字符串填充它,你可以这样做
whatever.fill('');
也就是说
["", "", "", "", ""]
如果你想用一句话来表达:
var whatever = Array(5).fill('');
1) 要创建新的数组,你可以使用数组构造函数:
Array(100)或 new Array(100)
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).fill(null).map((u, i) => i)
[...Array(4)].map((u, i) => i) [0,1,2,3]
[...Array(4)].map((u, i) => i)
Array.apply(null, Array(4)).map((u, i) => i) [0,1,2,3]
Array.apply(null, Array(4)).map((u, i) => i)
Array.from({ length: 4 }).map((u, i) => i) [0,1,2,3]
Array.from({ length: 4 }).map((u, i) => i)
我们从2017年开始使用 Array.from({length: 500})。
Array.from({length: 500})
在2018年以及今后,我们将使用 [...Array(500)]来实现这一目标。
[...Array(500)]
可以同时使用 javascript 方法 repeat ()和 split ()。
" ".repeat(10).split(" ")
此代码将创建一个数组,该数组有10个项,每个项为空字符串。
const items = " ".repeat(10).split(" ") document.getElementById("context").innerHTML = items.map((item, index) => index) console.log("items: ", items)
<pre id="context"> </pre>
如果希望创建具有某些值的匿名数组,则可以使用此语法。
var arr = new Array(50).fill().map((d,i)=>++i) console.log(arr)