![](/img/trans.png)
[英]I would like to fill an array with numbers using javascript with a for loop
[英]With JavaScript how would I increment numbers in an array using a for loop?
我正在嘗試增加數組中的數字
var myArray = [1, 2, 3, 4];
我嘗試使用
for (var i = 0; i < myArray.length; i++){
myArray[i] + 1;
}
但這似乎無濟於事:(請幫忙
您可以使用map()
這將使它非常干凈:
var arr = [1,2,3,4]; arr = arr.map(function(val){return ++val;}); console.log(arr);
使用 ES6 箭頭函數:
arr = [1, 2, 3, 4]; new_arr = arr.map(a => a+1); console.log(new_arr);
有很多可能性可以做到這一點,您可以使用 plus equal +=
,如下所示:
for (var i = 0; i < myArray.length; i++){
myArray[i] += 1;
}
或者簡單地說:
for (var i = 0; i < myArray.length; i++){
myArray[i] = myArray[i] + 1;
}
希望這可以幫助。
var myArray = [1, 2, 3, 4]; for (var i = 0; i < myArray.length; i++){ myArray[i] += 1; } alert(myArray);
假設您的數組包含有序數字,增量為 1,您還可以使用以下代碼:
var myArray = [1,2,3,4]; myArray.push(myArray[myArray.length - 1] + 1); myArray.shift(); alert(myArray);
沒有 Es6,
myArray[i] = myArray[i] + 1;
or
++myArray[i]
將工作。
您可以使用 Array 構造函數來執行此操作。
使用 Array.from() 方法
例如 :
Array.from([1,2,3,4,5], x => x+x);
而已。 您甚至可以創建具有長度的空數組
Array.from({length:5}, (v, i) => i);
您可以使用 ES6 的Array.from()
方法。 回調是一個映射函數,您可以使用它為數組中的每個數字加一。
這里在 map 函數中使用了前綴(而不是后綴)增量運算符++
,因為當您在操作數之前使用增量運算符時,增量發生在返回值之前,而使用后綴,原始值將在返回之前返回操作數將增加(因此,在x++
的情況下將返回未更改的數組版本)。
function addOne(arr) {
return Array.from(arr, x => ++x);
}
addOne([1, 2, 3]); // [2, 3, 4]
您可以使用 Array 構造函數。
使用Array.map()
方法,用數字填充系列
例如 :
Array(5 + 1).fill().map((_, index) => index + 1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.