«Единственный способ творить великие дела – это любить то, что ты делаешь»
JavaScript



Игра «Морской Бой» на JavaScript: Простая Игра и Игра для Двоих



Из предыдущей заметки стало известно как работает метод splice, реализующий добавление, удаление и замену элементов в массиве.

Теперь следует самостоятельно выполнить практическую задачу по этой теме.



Есть массив, про который заранее известно, что в нем точно больше одного элемента. Но неизвестно сколько именно!!!

Пусть им будет такой массив с фруктами: var fruits = ["яблоко", "апельсин", "груша", "гранат"].

Не забывайте, что по условию неизвестно, сколько точно в нем элементов, их может быть и 100 и 200.

Задача состоит в том, чтобы с помощью метода splice заменить в массиве предпоследний фрукт на "ананас" и вывести весь массив на экран.

Когда это будет сделано, следует проверить получившийся код на таком массиве: var fruits = ["банан", "мандарин", "манго"], в котором мандарин должен быть заменен на ананас.

Чтобы решить эту задачу, можно сначала немного поразмыслить.

Для примера берём массив с четырьмя фруктами из задания: var fruits = ["яблоко", "апельсин", "груша", "гранат"].

И в этом же примере проверим код для второго указанного в задании массива var fruits = ["банан", "мандарин", "манго"].

Фрагмент кода

<script type="text/javascript">

var fruits = [" Яблоко", " Апельсин", " Груша", " Гранат"];
fruits.splice(fruits.length - 2, 1, " Ананас"); /* Узнаем индекс предпоследнего элемента массива, удаляем его и меняем на Ананас */
document.write("<p>" + fruits); // Выводим массив

document.write("<p>");

var fruits = [" Банан", " Мандарин", " Манго"];
fruits.splice(fruits.length - 2, 1, " Ананас");
document.write("<p>" + fruits);

</script>

Результат

Яблоко, Апельсин, Ананас, Гранат

Банан, Ананас, Манго





Отзывы и комментарии:

Добавил(а): Евгений
Дата: 2019-03-21

У меня в все получилось без "fruits.length" fruits.splice(- 2, 1, " Ананас");

Добавил: Admin
Дата: 2019-03-21

Хорошо

Добавил(а): Баир
Дата: 2022-02-09

Не совсем понял, почему во втором примере удалился элемент Мандарин, если его индекс это 1? В методе splice мы указали, начиная со 2 индекса, удалить один элемент и заменить его элементом Ананас.

Добавил: Admin
Дата: 2022-02-09

Баир Вы писали 2022-02-09
Не совсем понял, почему во втором примере удалился элемент Мандарин, если его индекс это 1? В методе splice мы указали, начиная со 2 индекса, удалить один элемент и заменить его элементом Ананас.

Нет. В методе splice указано, начиная с 1-го индекса. Число элементов массива 3 минус 2 = 1. Т.е. начиная с 1-го индекса удаляем один элемент - это и есть "Мандарин".

Добавил(а): Баир
Дата: 2022-02-16

Понял, спасибо

Оставить отзыв:

Ваше Имя:

Текст комментария:

Ответьте на вопрос:

Сколько дней в Високосном году?


Массивы
Практическая задача - Метод splice
1933
Введение в массивы - Создание массивов
4873
Способы вывода данных из массива
7294
Практическая задача - Создание массива
2930
Свойство length - число элементов массива
2551
Добавление элементов в массив
4071
Удаление элементов из Массива
2494
Индекс последнего элемента массива
2788
Практическая задача – Удаление и добавление элементов в массив
2299
Метод splice – Добавление, удаление и замена нескольких элементов
5636
Метод reverse - Меняем порядок элементов массива
1974
Метод sort - сортировка элементов массива
1984
Метод join – Тип разделителя между элементами массива
1883
Метод concat - Объединение массивов
1713
Метод slice - Копирование элементов массива
2032
Многомерные массивы - Доступ к элементам многомерного массива
3987

Тематические публикации
Популярные заметки
Последние заметки