我正在創建一個填充了值的 N 長度陣列,我正在尋找是否可以改進我的作業方式。
我即時獲得亂數來確定陣列項的數量。
我正在做的是:
例如,如果數字是 5。
let array = [];
for (let i = 1; i <= 5; i ) {
array.push(`item0${i}`)
}
現在,陣列將是 ['item01', 'item02, .... 'item05']
這看起來很長,可以用更短的方法完成嗎?
謝謝
uj5u.com熱心網友回復:
只需使用新的 Array Constructor。
const arr = new Array(5)
然而,這只會創建一個沒有任何條目的長度為 5 的陣列。要在陣列上使用陣列方法,您首先必須用值填充陣列,或undefined使用擴展語法創建值條目。
如果要預填充陣列:
function makeArray(n) {
return (new Array(n)).fill().map((el,ind) => `item0${ind}`)
}
makeArray(5);
或者甚至提供回呼作為屬性,以便您可以更改預填充元素的外觀并使用擴展語法來避免.fill()呼叫:
function makeArray(n, cb) {
return [...new Array(n)].map((el,ind) => cb(ind))
}
makeArray(5, (ind) => `item0${ind}`);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/355598.html
標籤:javascript 数组 for循环
下一篇:Rust中的閉包陣列
