и
мы используем множитель 3, поскольку
и в
randomAdjective, и в randomBodyPart
по три элемента. Аналогично в строке
мы
умножаем на 5, ведь в
randomWords пять
элементов. Обратите внимание, что мы доба-
вили между
randomAdjective и randomWord
Random
body part
—
случайная
часть тела
Random
adjective
—
случайное
прилагатель-
ное
Random
insult
—
случайная
дразнилка
68
Часть I. Основы
строку с единственным пробелом. Запустите этот код несколько раз —
при каждом запуске получится новая случайная дразнилка!
ПОПР ОБУ ЙТЕ !
Если хотите сделать все действительно по-умному, замените строку
на вот такую:
var randomWord = randomWords[Math.floor(Math.random() *
randomWords.length)];
В этой программе всегда нужно умножать
Math.random() на длину
массива; использование
randomWords.length как множителя означает,
что нам не понадобится менять этот код, если длина массива изменится.
Вот еще один способ составления случайной дразнилки:
var randomInsult = ["У тебя", randomBodyPart, "словно",
randomAdjective, randomWord + "!!!"].join(" ");
"
У тебя череп словно дурацкая дубина!!!
"
В этом варианте каждое слово дразнилки — это отдельный эле-
мент массива, и мы соединяем все эти элементы методом
join с раз-
делителем-пробелом. Лишь в одном случае пробел не нужен — между
randomWord и «!!!». В этом случае мы используем оператор +, чтобы сое-
динить строки без пробела.
Что мы узнали
Как мы теперь знаем, массивы JavaScript предназначены для хранения
списка значений. Мы научились создавать массивы и работать с ними
и освоили много способов доступа к их элементам.
Массивы JavaScript — один из способов хранения множества значений
в одном месте. В следующей главе мы познакомимся с объектами — дру-
гим способом объединения значений в единую сущность. Для доступа
к элементам объектов используются строковые ключи, а не индексы.
УПРА ЖНЕНИЯ
Чтобы укрепить знания, полученные в этой главе, выполните эти
упражнения.
#1. Новые дразнилки
Сделайте генератор случайных дразнилок со своим набором
слов.
#2. Изощренные дразнилки
Усовершенствуйте генератор дразнилок, чтобы он создавал драз-
нилки такого типа: «У тебя [часть тела] еще более [прилагатель-
ное], чем [часть тела животного] у [животное]».
Подсказка: нужно будет создать еще один массив.
#3. Оператор + или join?
Сделайте две версии своего генератора дразнилок: одна пусть
использует для составления дразнилки оператор +, а другая соз-
дает массив со словами и соединяет их через пробел с помощью
join. Какой вариант вам больше нравится и почему?
#4. Соединение чисел
Как с помощью метода
join превратить массив [3, 2, 1] в строку
"3 больше, чем 2 больше, чем 1"?
70
4
Достарыңызбен бөлісу: |