получение нового массива [дубликат]

151
23 января 2019, 09:20

Данный вопрос является точным дубликатом:

  • Получить результирующий массив из объектов массива 2 ответа

Есть массив из N элементов. Нужно каждый элемент разделить на 2 и вывести новый элемент. Код на javascript.

let arr = [2,4,6];
for(var i=0; i<arr.length;i++) {
alert(arr[i]/2);
}

Только тут у меня каждый элемент выходит по одному раз, то есть сначала 1 потом 2 и потом, а нужно что вывелся новый массив элементов 1,2,3. Как это реализовать? Спасибо.

Answer 1

Нужно создать новый массив и заполнить его через цикл. alert в конце цикла.

let arr = [2,4,6]; 
let newArr = []; 
for(var i=0; i<arr.length;i++) { 
  newArr.push(arr[i]/2); 
} 
 
alert(newArr)

Вот более красивый код:

const arr = [2, 4, 6] 
const newArr = [] 
 
for (item of arr) 
  newArr.push(item / 2) 
 
alert(newArr)

Вот через метод map:

const arr = [2, 4, 6] 
const newArr = arr.map(item => item / 2) 
 
alert(newArr)

Answer 2

Для получения нового массива на основе старого можно использовать метод .map

let arr = [2, 4, 6]; 
let arr2 = arr.map(el => el / 2); 
console.log(arr2);

READ ALSO
Как отследить старую версию Safary в JS?

Как отследить старую версию Safary в JS?

Подскажите, как отследить что пользователь зашел на сайт с мобильного Сафари (Iphone 4-5 и ниже) *Насколько мне известно там Safary v5-7 и она больше...

159
Выбока jquery DOM

Выбока jquery DOM

ЗдраствуйтеПодскажите пожалуйста, как средствами jquery/phpQuery вытащить в переменную значение window

169
Нарисовать пирамидки javascript [закрыт]

Нарисовать пирамидки javascript [закрыт]

Помогите нарисовать пирамидки javascriptЗаранее спасибо

179