Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ТЯП-Лекция 02.docx
Скачиваний:
17
Добавлен:
11.06.2015
Размер:
349.33 Кб
Скачать

1.3. Ввод и вывод значений

Большинство Web-браузеров, поддерживающихJavaScript, предоставляют три системные функции4для ввода информации с клавиатуры и вывода её на экран –alert,confirmиprompt. Каждая из них показывает на экране диалоговое окно – окносообщения(«предупреждения»),подтвержденияиприглашения, соответственно, – и ждёт ответа пользователя.

Функция alert(сообщение)выводит на экран результат вычисления выражения «сообщение», которое является аргументом функции (примерно, как на рис. 2.6). После ознакомления с ним пользователь должен закрыть окно нажатием кнопкиОК(или любым другим известным способом). Тогда произойдёт выход из функции.

Рисунок 2.6. Результат вызова alert("Привет!").

Функция alertне выдаёт никакого значения, поэтому программа просто продолжит свою работу. Эту функцию обычно используют как оператор.

Функция confirm(сообщение)выдаёт на экран сообщение-вопрос (см. рис. 2.7). Пользователь должен дать утвердительный ответ (кнопкаОК) или отрицательный (кнопкаОтмена). В первом случае функцияconfirmвыдаёт значение ИСТИНА, а во втором – ЛОЖЬ. Программа может использовать это значение для выбора продолжения.

Рисунок 2.7. Результат вызова метода confirm("Хотите продолжить игру?").

Функция prompt(сообщение, вариант ответа)выдаёт на экран сообщение-запрос и текстовое поле для ввода ответа (см. рис. 2.8). При нажатии кнопкиОКфункция выдаёт в качестве результатастрокуиз текстового поля, и программа может её обработать. При нажатии кнопкиОтменафункция выдаёт значениеnull. Если в вызове отсутствует второй аргумент, в качестве варианта ответа в поле ввода появляется строка «undefined». Если не хочется выдавать вариант ответа и видеть при этом «undefined», задавайте вторым аргументом пустую строку ("").

Рисунок 2.8. Результат вызовы метода prompt("Как тебя зовут?", "").

Аргументы в вызове любой функции, в общем случае, являются выражениями, которые сначала вычисляются, а к значениям, полученным в результате вычислений, применяется функция. Выражения и их вычисление рассматриваются ниже.

Поскольку функции confirmиpromptвыдают значение, которое следует обработать, то их используют как часть оператора, обычно оператора присваивания (см. ниже).

1.4. Литералы значений

Для включения значений непосредственно в текст программы используется синтаксическая конструкция литерал5. Литералы являются частным случаем выражений (см. далее).

Формальный синтаксис:

Литерал→ ЛитералПростогоЗначения │ ЛитералМассива │ ЛитералОбъекта

ЛитералПростогоЗначения→ Число │ Строка │ true │ false │ null │ undefined │ Infinity │ NaN

Число→ Целое │ Вещественное

Литералы trueиfalseявляются литералами соответствующихлогическихзначений ИСТИНА и ЛОЖЬ; литералыInfinityиNaNявляются литералами специальныхчисловыхзначений; литералыnullиundefinedявляются литералами самих этих специальныхзначений.

Литералы целых чисел

Целые числа в языке JavaScriptмогут быть записаны вдесятичной(10‑й),восьмеричной(8-й) ишестнадцатеричной(16-й) системе. Литерал числа указывает и систему, и само число. Литералом можно изобразить только неотрицательное число, так как знак числа вJavaScriptсчитается унарной операцией (см. ниже).

В 10-й системеподряд идут десятичные цифры (0 – 9) этого числа,но если среди цифр числа нет 8 или 9, то 0 не может быть первой цифрой, т.е. первые нули в этом случае обязательно опускаются, чтобы не спутать его с восьмеричным числом.

В 8-й системепервой цифройобязательно записывается 0, а потом идут восьмеричные цифры (0 – 7) числа.

В 16-й системепервойобязательно стоит цифра 0, за ней латинская букваx или Х, а следом – любые шестнадцатеричные цифры числа (0 – 9, иA,B,C,D,E,Fилиa,b,c,d,e,f).

Например, десятичное число 16в виде литерала может быть записано так:

16 (10-й литерал), или

020(8-й литерал), или

0x10 (16-й литерал).

Если же мы напишем 016, то это будет восьмеричное число, равное десятичному числу 14.

Эти литералы JavaScriptпереводит в некоторую внутреннюю стандартную форму числа (не обязательно в двоичную, но большей частью именно в неё), а на экран функцияalertвыдаёт в десятичной форме. Так что операторalert(016)выдаст на экран число 14. Заметим, что числовой форматJavaScriptпозволяет точно представлять все целые числа в диапазоне от9007199254740992 (253) до 9007199254740992 (253) включительно6.

Формальный синтаксис:

Целое Десятичное │ Восьмеричное │ Шестнадцатеричное

Десятичное Цифра10 Десятичное

Восьмеричное 0 Продолжение8

Продолжение8 Цифра8 Продолжение8

Цифра8→ 0 │ 1 │ 2 │ … │ 7

Шестнадцатеричное→ 0x Продолжение16 │ 0X Продолжение16

Продолжение16 Цифра16 Продолжение16

Цифра16 → 0 │ 1 │ 2 │ … │ 9 │ a │ … │ f │ A │ … │ F

Если десятичное целое число начинается с 0, то оно должно содержать хоть одну цифру 8 или 9, иначе оно будет воспринято как восьмеричное.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]