我想用數字從1到數組的長度填充數組。但是,它不工作。我可以做什麼不同來修復它?for循環用數字填充數組
var numArray = new Array(48);
for(i=0;i>=numArray.length;i++) {
numArray[i] = numArray.push(i+1);
}
我想用數字從1到數組的長度填充數組。但是,它不工作。我可以做什麼不同來修復它?for循環用數字填充數組
var numArray = new Array(48);
for(i=0;i>=numArray.length;i++) {
numArray[i] = numArray.push(i+1);
}
首先,你的循環實際上不會運行,因爲條件i >= numArray.length
將立即是假的,因爲i == 0
和numArray.length == 48
。要解決此問題,請將環路更改爲
// this will loop as long as i is less than the length of the array
// i.e. i = 0, i = 1, i = 2, ...
for (var i = 0; i < numArray.length; i++) {
另外,您並未以您認爲的方式將數字添加到數組中。 numArray.push(i+1)
添加到陣列中,這將在索引48被起動結束時的數目可以簡單地使用
numArray[i] = i + 1;
與數添加到陣列。如果你必須使用push
方法,你知道你的數組必須具有48的長度,你可以做
var numArray = new Array(0);
for (var i = 0; i < 48; i++) {
numArray.push(i + 1);
}
我編輯的答案包括如何使用推 – jonhopkins
如何幫助,謝謝。當然,我的一個愚蠢的錯誤。 –
你也可以像這樣做;
var numArray = (new Array(48)).fill("whatever").map((e,i) => i+1);
document.write('<pre>' + JSON.stringify(numArray, 0, 2) + '</pre>');
更改線; 'numArray [i] = i + 1;' – ali
你可以這樣做:'numArray [i] = i + 1'。 –
我的輸出是「,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ,,「:c –