Упражнение по написанию кода 4: (*) Продвинутые задания на использование циклов и условий

Задание:

1) Заполните новый массив (result) числами из старого (arr). Количество элементов в массиве можно получить как arr.length, а к элементам обращаемся все так же: arr[0], arr[1] и тд.
Должен получиться точно такой же массив

2) Измените данный массив так, чтобы все числа были увеличены в 2 раза, а если попадается строка строка - то к ней было добавлено " - done".
Для определения типа данных используйте typeof();
Должно получиться:

Код
[ 10, 20, 'Shopping - done', 40, 'Homework - done' ]

3) Разверните массив data наоборот при помощи цикла и запишите данные в массив result.
Должно получиться:

Код
[ 'Homework', 20, 'Shopping', 10, 5 ]

Для первой задачи

Код
function firstTask() {
  const arr = [3, 5, 8, 16, 20, 23, 50];
  const result = [];
   
  return result;
}

Для второй задачи

Код
function secondTask() {
  const data = [5, 10, 'Shopping', 20, 'Homework'];
   
  return data;
}

Для третьей задачи

Код
function thirdTask() {
  const data = [5, 10, 'Shopping', 20, 'Homework'];
  const result = [];

  return result;
}

Решения:

Первая задача:

Код
function firstTask() {
  const arr = [3, 5, 8, 16, 20, 23, 50];
  const result = [];

  for (let i = 0; i < arr.length; i++) {
  result[i] = arr[i];
  }

  return result;
}

firstTask();

Вторая задача:

Код
function secondTask() {
  const data = [5, 10, "Shopping", 20, "Homework"];

  for (let i = 0; i < data.length; i++) {
  if (typeof(data[i]) === 'string') {
  data[i] += ' - done';
  } else {
  data[i] *= 2;
  }
  }

  return data;
}

secondTask();

Третья задача:

Код
function thirdTask() {
  const data = [5, 10, "Shopping", 20, "Homework"];
  const result = [];

  for (let i = 1; i <= data.length; i++) {
  result[i - 1] = data[data.length - i];
  }

  return result;
}
thirdTask();

Всего комментариев: 1

Алексей 14.06.2025 в 09:56 / Материал
Решение преподавателем второй задачи:

Код
function secondTask() {
  const data = [5, 10, "Shopping", 20, "Homework"];

  for (let i = 0; i < data.length; i++) {
  if (typeof data[i] === "number") {
  data[i] = data[i] * 2;
  } else if (typeof data[i] === "string") {
  data[i] = `${data[i]} - done`;
  }
  }

  return data;
}

secondTask();
0
Имя *:
Email *:
Код *:
Хостинг от uCoz