Добавить цикличным методом по еденице к каждому эллементу array
Подскажите каким методом сделать элементарное задание.
К примеру есть var array=[2, 3, 4, 5, 6]; Каким видом цикла можно каждый элемент array увеличить на 1? чтоб в итоге было: 3 4 5 6 7 ? |
Nadine,
2 + 1 = 2 ??? |
ой.. очепятка
|
Nadine,
значения массива идут по порядку ? и возрастают до увеличения значения на 1 ? цикл обязателен? |
ну цифры могут быть любыми, главное чтоб к каждому был +1.
Ну думаю да, цикл обязателен. А как можно сделать без цикла? Чтоб к примеру если я что то добавлю в этот массив (новые значения) , то чтоб все считалось без проблем |
Nadine,
var arr=[2, 3, 4, 5, 6],l = arr.length; arr[l-1]=arr.shift()+l alert(arr) а в чём проблема то у вас перебрать элементы массива циклом? |
рони,
знаешь толк XD |
Цитата:
|
Nadine,
я уточню, вот это он просто сместил элементы. физически он их не изменил, это такая оптимизация типа. если тебе нужно пройтись по всем элементам массива? то просто используй этот метод: var arr = [1,2,3]; alert(arr); arr.forEach(function(a,b,c){ c[b] = a + 1; }); alert(arr) где a - значение текущей ячейки b - индекс текущей ячейки с - ссылка на перебираемый массив |
Цитата:
можно простым перебором var arr=[2, 3, 4, 5, 6]; function g(arr,n) { var a = []; n = n || 1; for (var i=0; i<arr.length; i++) { a[i]=arr[i]+n } return a } alert(g(arr)); alert(g(arr,2)); |
Часовой пояс GMT +3, время: 13:56. |