Возвращает абсолютное значение числа.
Число.
Поскольку abs это static-метод из Math, Вы всегда используете его так: Math.abs(), а не как метод Math-объекта, созданного Вами.
Возвращает арккосинус числа (в радианах).
Число.
Метод acos возвращает числовое значение от 0 до pi радиан. Если значение number
находится вне этого диапазона, возвращается NaN Not a Number/"не число").
Поскольку acos это static-метод из Math, Вы всегда используете его так: Math.acos(), а не как метод Math-объекта, созданного Вами.
Если Вы передаёте -1 в getAcos, он возвращает 3.141592653589793; если передаёте 2, возвращает NaN, поскольку 2 - вне диапазона.
, , , , , .
Создаёт HTML-якорь, используемый как цель для гиперссылки.
Строка.
для программного создания и отображения якоря в документе. Создаёт якорь методом anchor, а затем вызывает write или writeln для отображения якоря в документе. В серверном JavaScript используйте функцию write для отображения якоря.
В этом синтаксисе текстовая строка представляет литеральный текст, который должен видеть конечный пользователь. Строка nameAttribute представляет атрибут NAME тэга A.
Якоря, созданные методом anchor, становятся элементами массива document.anchors.
.
Эта возможность отсутствует спецификации ECMA, соответствующей JavaScript 1.3, но ожидается в следующей её версии.
Позволяет применять метод одного объекта в контексте другого объекта (вызывающего объекта).
Параметр для вызывающего объекта.
Вы можете назначить другой объект this при вызове существующей функции. this
ссылается на текущий объект, вызывающий объект. С помощью apply
Вы можете написать метод один раз и затем наследовать его в другом объекте без необходимости переписывать метод для нового объекта.
apply очень похож на call, за исключением поддерживаемых типов аргументов. Вы можете использовать массив аргументов вместо именованного набора параметров. С помощью apply Вы можете использовать литерал массива, например, apply(this, [name, value]), или объект Array, например, apply(this, new Array(name, value)).
Вы можете также использовать для параметра argArray. arguments
это локальная переменная функции. Она может быть использована для всех неспецифицированных аргументов вызываемой функции. Таким образом, Вы не должны знать аргументы вызываемого объекта, когда применяете метод apply. Вы можете использовать arguments
для передачи всех аргументов вызываемому объекту. Вызванный объект после этого отвечает за обработку этих аргументов.
Вы можете использовать apply для создания цепочки конструкторов для объекта, как в Java. В этом примере конструктор объекта product определяется с двумя параметрами, name и value. Другой объект, prod_dept, инициализирует свою уникальную переменную (dept) и вызывает конструктор для product
в своём конструкторе для инициализации других переменных. В данном примере параметр arguments
используется для всех аргументов конструктора объекта product.
Массив из аргументов, передаваемых функции.
Все объекты функции.
(не рекомендуется).
JavaScript 1.2: добавлено свойство .
JavaScript 1.3: не рекомендуется свойство ; удалена поддержка имён аргументов и и мён локальных переменных как свойств массива arguments.
остался как локальная переменная функции, и и - как свойства этой переменной.
Массив arguments это локальная переменная, доступная внутри всех объектов функции; arguments
больше не используется в качестве свойства Function.
Вы можете обращаться к аргументам функции внутри функции через использование массива arguments. Этот массив содержит вход для каждого аргумента, передаваемого функции. Например, если функции передаются три аргумента, Вы можете обращаться к этим аргументам так:
Массив arguments доступен только внутри тела функции. Попытка получить доступ к массиву arguments
за пределами объявления функции приводит к ошибке.
при вызове функции с большим количеством аргументов, чем формально объявлено. Эта техника используется в функциях, которым может передаваться непостоянное количество аргументов. Можно использовать arguments.length для определения количества аргументов, переданных функции, а затем обработать каждый аргумент с помощью массива arguments. (Чтобы определить количество аргументов, объявленных при определении функции, используйте свойство .)
Специфицирует тело выполняемой в данный момент функции.
Специфицирует имя функции, которая вызвала выполняемую в данный момент функцию. (Не рекомендуется использовать).
является также свойством объекта Function и может иметь перед собой имя функции. Например, если функции myFunc
передаются три аргумента с именами arg1, arg2 и arg3, Вы можете обращаться к этим аргументам так:
Каждая локальная переменная функции является свойством массива arguments. Например, если функция myFunc
имеет локальную переменную с именем myLocalVar, Вы можете обратиться к этой переменной: arguments.myLocalVar.
Каждый формальный аргумент функции является свойством массива arguments. Например, если функция myFunc имеет два аргумента с именами arg1 и arg2, Вы можете обратиться к этим аргументам: arguments.arg1 и arguments.arg2. (Вы можете также обратиться к ним arguments[0] и arguments[1].)
Здесь определена функция, соединяющая несколько строк. Единственным формальным аргументом этой функции является строка, специфицирующая символы, разделяющие объединяемые элементы. Функция определяется так:
Вы можете передать этой функции любое количество аргументов, и она создаст список, используя каждый аргумент как элемент списка:
возвращает "sage. basil. oregano. pepper. parsley. "
myConcat(". ","sage","basil","oregano", "pepper", "parsley")
Здесь определена функция, создающая HTML-списки. Единственным формальным аргументом этой функции является строка, которая будет "U", если список неупорядоченный (bulleted), или "O", если это упорядоченный/нумерованный список. Функция определяется так:
Вы можете передать этой функции любое количество аргументов, и она отобразит каждый аргумент как элемент списка указанного типа. Например, этот вызов функции:
В серверном JavaScript Вы можете отобразить тот же вывод путём вызова функции вместо document.write.
Специфицирует тело выполняемой в данный момент функции.
Локальная переменная ; (не рекомендуется).
JavaScript 1.4: callee не рекомендуется в качестве свойства для Function.arguments, осталось как свойство локальной переменной arguments функции.
это свойство локальной переменной , доступной внутри всех объектов функции; arguments.callee больше не используется как свойство в Function.
Свойство callee доступно только внутри тела функции.
Ключевое слово this не ссылается на выполняемую в данный момент функцию. Используйте свойство callee
для обращения к функции внутри тела функции.
Эта функция возвращает значение вызова свойства callee.
.
Специфицирует имя функции, которая вызвала выполняемую в данный момент функцию.
caller больше не используется.
Свойство caller доступно только внутри тела функции.
Если выполняемая в данный момент функция была вызвана с верхнего уровня программы JavaScript, caller имеет значение null.
Ключевое слово this не ссылается на выполняемую в данный момент функцию, поэтому Вы обязаны обращаться к функциям и к объектам Function по имени, даже в теле функции.
Если Вы используете его в контексте строки, Вы получите результат вызова FunctionName.toString. То есть - декомпилированную каноническую исходную форму функции.
Вы можете также использовать вызывающую функцию, если знаете, какие аргументы ей могут понадобиться. Таким образом, вызываемая функция может вызвать вызвавшую её функцию без знания имени конкретного вызывающего, предполагая, что она знает, что все её вызыватели имеют ту же форму и построение и что они не будут вызывать вызванную функцию ещё раз безусловно (что может привести к бесконечному зацикливанию).
.
Специфицирует количество аргументов, передаваемых функции.
Локальная переменная ; (не рекомендуется).
JavaScript 1.4: length не рекомендуется как свойство для Function.arguments, осталось как свойство локальной переменной arguments функции.
arguments.length это свойство локальной переменной , доступной внутри всех объектов функции; arguments.length как свойство в Function больше не используется.
arguments.length предоставляет несколько аргументов, реально передаваемых функции. По контрасту, свойство указывает, сколько аргументов функция ожидает получить.
.
Арифметические операции принимают числовые значения (литералы или переменные) в качестве операндов и возвращают одно числовое значение. Стандартными арифметическими операциями являются сложение (+), вычитание (-), умножение (*) и деление (/).
Эти операции работают так же, как и в большинстве других языков программирования, за исключением того, что операция / возвращает в JavaScript частное с плавающей точкой, а не целочисленный результат деления, как в языках C и Java. Например:
Специфицирует количество аргументов, ожидаемых функцией.
Не рекомендуется JavaScript 1.4.
arity больше не используется и заменена на свойство .
arity это внешняя функция, указывающая, сколько аргументов функция ожидает. По контрасту, предоставляет количество аргументов, реально передаваемых функции.
Использование arity и .
, .
Позволяет работать с массивами.
JavaScript 1.3: добавлен метод ; изменено свойство ; изменён метод .
arrayLength | |
Начальный размер массива. Доступ к этому значению Вы можете получить через свойство length.
Если специфицированное значение - не число, создаётся массив размером 1 с первым элементом, имеющим специфицированное значение.
Максимальный возможный размер массива: 4,294,967,295.
elementN | |
Список значений элементов массива. Если специфицирована эта форма, массив инициализируется со специфицированными значениями в качестве элементов, а свойство length массива устанавливается в количество аргументов.
Описание
Массив это упорядоченный набор значений, ассоциированных с одним именем переменной.
В этом примере создаётся объект Array с литералом массива; массив coffees содержит три элемента и имеет длину "три":
coffees = ["French Roast", "Columbian", "Kona"]
Вы можете создать плотный массив из двух или более элементов, начиная с индекса 0, если Вы определяете начальные значения для всех элементов. Плотным является массив, в котором каждый элемент имеет значение. Следующий код создаёт плотный массив из трёх элементов:
myArray = new Array("Hello", myVar, 3.14159)
Индексирование массива
Элемент массива индексируется порядковым номером.
Например: предположим, Вы определяете такой массив:
myArray = new Array("Wind","Rain","Fire")
Затем Вы обращаетесь к первому элементу массива myArray[0], а ко второму элементу - myArray[1].
Специфицирование единственного параметра
Если Вы специфицируете единственный числовой параметр в конструкторе Array, Вы специфицируете начальный размер массива.
Следующий код создаёт массив из 5 элементов:
billingMethod = new Array(5)
Поведение конструктора Array
зависит от того, является ли единственный параметр числом.
Если специфицировано число, конструктор конвертирует число в беззнаковое 32-битное целое число и генерирует массив со свойством length (размер массива), установленным в это целое. Массив первоначально не содержит элементов, хотя и может иметь ненулевой размер.
Если специфицировано число, создаётся массив размером 1 с первым элементом, имеющим специфицированное значение.
Следующий код создаёт массив размером 25, затем присваивает значения первым трём элементам:
musicTypes = new Array(25)
musicTypes[0] = "R&B"
musicTypes[1] = "Blues"
musicTypes[2] = "Jazz"
Увеличение размера массива косвенно
Размер массива увеличивается, если Вы присваиваете значение элементу с более высоким индексом, чем текущий размер массива. Следующий код создаёт массив размером 0, а затем присваивает значение элементу 99. Это изменяет размер массива на 100.
colors = new Array()
colors[99] = "midnightblue"
Создание массива путём использования результата совпадения
В результате совпадения регулярного выражения и строки может быть создан массив. Этот массив имеет свойства и элементы, которые предоставляют информацию о совпадении. Массив является return-значением ,
и .
Чтобы лучше пояснить эти свойства и элементы, просмотрите следующий код, а затем - таблицу:
<SCRIPT LANGUAGE="JavaScript1.2">
//Совпадает одно d с последующим одним или более b с последующим одним d
//Запоминаются совпавшие b с последующим d
//Регистр игнорируется
myRe=/d(b+)(d)/i;
myArray = myRe.exec("cdbBdbsbz");
</SCRIPT>
Свойства и элементы, возвращённые из этого совпадения:
Свойство/Элемент
Описание
Пример
input | |
Свойство только для чтения, содержание которого отражает оригинальную строку, относительно которой выполняется совпадение с регулярным выражением.
|
cdbBdbsbz
index | |
Свойство только для чтения, которое является индексом с базой 0 совпадения в строке.
| 1
[0] | |
Элемент только для чтения, который специфицирует последние совпавшие символы.
|
dbBd
[1], ...[n] | |
Элементы только для чтения, которые специфицируют совпадения подстроки в скобках, если она включена в регулярное выражение. Количество подстрок, заключённых в кавычки, не лимитировано.
| [1]=bB
[2]=d
Обратная совместимость
JavaScript 1.2.
Если Вы специфицируете единственный параметр в конструкторе Array, поведение зависит от того, специфицировали ли Вы LANGUAGE="JavaScript1.2"
в тэге <SCRIPT>:
Если Вы специфицируете LANGUAGE="JavaScript1.2" в тэге <SCRIPT>, возвращается массив, состоящий из одного элемента. Например, new Array(5)
создаёт массив из одного элемента с первым элементом со значением 5. Конструктор с единственным параметром работает так же, как конструктор с несколькими параметрами. Вы не можете специфицировать свойство length массива Array, используя конструктор с одним параметром.
Если Вы не специфицируете LANGUAGE="JavaScript1.2" в тэге <SCRIPT>, Вы специфицируете начальный размер массива, как в других версиях JavaScript.
JavaScript 1.1 и более ранние.
Если Вы специфицируете единственный параметр в конструкторе Array, Вы специфицируете начальный размер массива. Следующий код создаёт массив из пяти элементов:
billingMethod = new Array(5)
JavaScript 1.0.
Вы обязаны индексировать массив порядковыми числительным; например, myArray[0].
Свойства. Резюме.
Свойство
Описание
|
|
Специфицирует функцию, создающую прототип объекта.
|
|
Для массива, созданного из совпадения с регулярным выражением, индекс с базой 0 места совпадения в строке.
|
|
Для массива, созданного из совпадения с регулярным выражением, отражает оригинальную строку, относительно которой выполнялся поиск совпадений с регулярным выражением.
| |
Количество элементов в массиве. | |
| |
Позволяет добавлять свойства ко всем объектам. | |
Метод. Резюме.
Метод
Описание
| | |
Объединяет два массива и возвращает новый массив.
|
|
Объединяет все элементы массива в строку.
| | |
Удаляет последний элемент массива и возвращает этот элемент.
| | |
Добавляет один или более элементов в конец массива и возвращает новый размер массива.
| | |
Переворачивает элементы массива: первый элемент становится последним, а последний элемент - первым.
|
|
Удаляет первый элемент массива и возвращает этот элемент.
|
Извлекает раздел массива и возвращает новый массив. | |
|
Добавляет и/или удаляет элементы массива. | |
|
Сортирует элементы массива. | |
|
Возвращает литерал массива, представляющий специфицированный массив; Вы можете использовать это значение для создания нового массива. Переопределяет метод . | |
|
Возвращает строку, представляющую массив и его элементы. Переопределяет метод . | |
|
Добавляет один или более элементов впереди массива и возвращает новый размер массива. | |
|
Возвращает примитивное значение массива. Переопределяет метод . |
|
Кроме того, этот объект наследует методы и из .
Примеры
Пример 1.
Создаётся массив msgArray
размером 0, затем присваивается значение элементам msgArray[0] и msgArray[99], а размер массива становится 100.
msgArray = new Array()
msgArray[0] = "Hello"
msgArray[99] = "world"
// Следующий оператор - true,
// поскольку определён элемент msgArray[99].
if (msgArray.length == 100)
myVar="Массив имеет размер 100."
Пример 2.
Двухмерный массив. Создаётся двухмерный массив и результат присваивается переменной myVar.
myVar="Тест многомерного массива; "
a = new Array(4)
for (i=0; i < 4; i++) {
a[i] = new Array(4)
for (j=0; j < 4; j++) {
a[i][j] = "["+i+","+j+"]"
}
}
for (i=0; i < 4; i++) {
str = "Ряд "+i+":"
for (j=0; j < 4; j++) {
str += a[i][j]
}
myVar += str +"; "
}
В этом примере выполняется присвоение следующей строки переменной myVar (разрывы строк даны для удобства чтения):
Тест многомерного массива;
Ряд 0:[0,0][0,1][0,2][0,3];
Ряд 1:[1,0][1,1][1,2][1,3];
Ряд 2:[2,0][2,1][2,2][2,3];
Ряд 3:[3,0][3,1][3,2][3,3];
Asin
Возвращает арксинус числа (в радианах).
Метод из
|
|
Static
|
Реализован в
| JavaScript 1.0, NES 2.0
|
Версия ECMA |
ECMA-262
Синтаксис
asin(x)
Параметр
Число.
Описание
Метод asin возвращает числовое значение в диапазоне от -pi/2 до pi/2 радиан. Если значение number вне этого диапазона, возвращается NaN.
Поскольку asin это static-метод из Math, Вы всегда используете его так: Math.asin(), а не как метод Math-объекта, созданного Вами.
Примеры
Эта функция возвращает арксинус переменной x:
function getAsin(x) {
return Math.asin(x)
}
Если Вы передаёте в getAsin значение 1, он возвращает 1.570796326794897 (pi/2); если Вы передаёте 2, он возвращает NaN, поскольку 2 находится вне диапазона.
См. также
, , , , , .
Atan
Возвращает арктангенс числа (в радианах).
Метод из
|
|
Static
|
Реализован в |
JavaScript 1.0, NES 2.0
|
Версия ECMA |
ECMA-262
Синтаксис
atan(x)
Параметр
Число.
Описание
Метод atan возвращает числовое значение от -pi/2 до pi/2 в радианах.
Поскольку atan это static-метод из Math, Вы всегда используете его так: Math.atan(), а не как метод Math-объекта, созданного Вами.
Пример
Возвращает арктангенс переменной x:
function getAtan(x) {
return Math.atan(x)
}
Если Вы передаёте в getAtan значение 1, он возвращает 0.7853981633974483; если передаёте .5, оно возвратит 0.4636476090008061.
См. также
, , , , , .
Возвращает арктангенс частного своих аргументов.
Метод из |
|
Static |
Реализован в |
JavaScript 1.0, NES 2.0 |
Версия ECMA |
ECMA-262
Синтаксис
atan2(y, x)
Параметр
Число.
Описание
Метод atan2 возвращает числовое значение в диапазоне от -pi до pi, представляющее угол тета точки (x,y). Это угол в направлении по часовой стрелке, измеренный в радианах, между положительной осью X и точкой (x,y). Обратите внимание, что аргументы этой функции передают сначала y-координату, а затем x-координату.
atan2 предаёт раздельно аргументы x и y, а atan передаёт частное этих двух аргументов.
Поскольку atan2 это static-метод из Math, Вы всегда используете его так: Math.atan2(), а не как метод Math-объекта, созданного Вами.
Пример
Следующая функция возвращает угол полярной координаты:
function getAtan2(x,y) {
return Math.atan2(x,y)
}
Если Вы передаёте в getAtan2 значения (90,15), он возвратит 1.4056476493802699; если передаёте (15,90), он возвращает 0.16514867741462683.
См. также
, , , , , .
Big
Выводит строку шрифтом большего размера, как при использовании тэга BIG.
Метод из
|
|
Реализован в |
JavaScript 1.0, NES 2.0
Синтаксис
big()
Параметры
Отсутствуют.
Описание
Используйте метод big с методами write или writeln для форматирования и отображения строки документа. В серверном JavaScript используйте функцию write для отображения строки.
Примеры
В этом примере используются методы для изменения размера строки:
var worldString="Hello, world"
document.write(worldString.small())
document.write("<P>" + worldString.big())
document.write("<P>" + worldString.fontsize(7))
Этот пример даёт такой же вывод, как и нижеследующий HTML:
<SMALL>Hello, world</SMALL>
<P><BIG>Hello, world</BIG>
<P><FONTSIZE=7>Hello, world</FONTSIZE>
См. также
, .
Blink
Создаёт мигающую строку, как при использовании тэга BLINK.
Метод из
|
|
Реализован в
| JavaScript 1.0, NES 2.0
Синтаксис
blink()
Параметры
Отсутствуют.
Описание
Используйте метод blink с методами write или writeln для форматирования и отображения строки документа. В серверном JavaScript используйте функцию write
для отображения строки.
Примеры
В этом примере используются методы для изменения форматирования строки:
var worldString="Hello, world"
document.write(worldString.blink())
document.write("<P>" + worldString.bold())
document.write("<P>" + worldString.italics())
document.write("<P>" + worldString.strike())
Этот пример даёт такой же вывод, как и нижеследующий HTML:
<BLINK>Hello, world</BLINK>
<P><B>Hello, world</B>
<P><I>Hello, world</I>
<P><STRIKE>Hello, world</STRIKE>
См. также
, , .
Bold
Отображает строку жирным шрифтом, как при использовании тэга B.
Метод из
|
|
Реализован в
| JavaScript 1.0, NES 2.0
Синтаксис
bold()
Параметры
Отсутствуют.
Описание
Используйте bold с методами write или writeln для форматирования и отображения строки документа. В серверном JavaScript используйте функцию write для отображения строки.
Примеры
В этом примере используются методы для изменения форматирования строки:
var worldString="Hello, world"
document.write(worldString.blink())
document.write("<P>" + worldString.bold())
document.write("<P>" + worldString.italics())
document.write("<P>" + worldString.strike())
Этот пример даёт такой же вывод, как и нижеследующий HTML:
<BLINK>Hello, world</BLINK>
<P><B>Hello, world</B>
<P><I>Hello, world</I>
<P><STRIKE>Hello, world</STRIKE>
См. также
, , .
Boolean
Объект Boolean это оболочка объекта для булева значения.
Объект ядра
|
|
Реализован в |
JavaScript 1.1, NES 2.0
JavaScript 1.3: добавлен метод .
|
Версия ECMA |
ECMA-262
Создание
Конструктор Boolean
new Boolean(value)
Параметры
Начальное значение объекта Boolean. Значение конвертируется к boolean, если необходимо. Если значение опущено или равно 0, -0, null, false, NaN, undefined или пустой строке (""), объект имеет начальное значение false. Все другие значения, включая любой объект или строку "false", создают объект с начальным значением true.
Описание
Не путайте примитивные Boolean-значения true и false со значениями true и false объекта Boolean.
Любой объект со значением не undefined или не null, включая объект Boolean со значением false, вычисляется до true, когда передаётся условному оператору. Например, условие этого оператора if вычисляется в true:
x = new Boolean(false);
if(x) //условие - true
Это поведение не применяется для Boolean-примитивов. Например, условие следующего оператора if вычисляется в false:
x = false;
if(x) //условие - false
Не используйте объект Boolean для конвертации не-булева значения в булево. Вместо этого используйте Boolean как функцию для выполнения этой задачи:
x = Boolean(expression) //предпочтительнее
x = new Boolean(expression) //не используйте
Если Вы специфицируете любой объект, включая Boolean-объект, значение которого - false, как начальное значение Boolean-объекта, новый Boolean-объект имеет значение true.
myFalse=new Boolean(false) //
начальное значение - false
g=new Boolean(myFalse) //начальное значение - true
myString=new String("Hello") // строковой объект
s=new Boolean(myString) //начальное значение - true
Не используйте Boolean-объект вместо Boolean-примитива.
Обратная Совместимость
JavaScript 1.2 и более ранние версии.
Объект Boolean ведёт себя так:
Если объект Boolean используется как условие проверки, JavaScript возвращает значение Boolean-объекта. Например, Boolean-объект со значением false рассматривается как примитивное значение false, а Boolean-объект со значением true рассматривается как примитивное значение true в проверке условия. Если объект Boolean - false, условный оператор вычисляется до false.
Вы можете использовать Boolean-объект вместо Boolean-примитива.
Свойства. Резюме.
Свойство
Описание
| | |
Специфицирует функцию, которая создаёт прототип объекта.
| | |
Определяет свойство, которое совместно используется объектами Boolean.
Методы. Резюме.
Метод
Описание
|
|
Возвращает литерал объекта, представляющий специфицированный Boolean-объект; Вы можете использовать это значение для создания нового объекта. Переопределяет метод .
| | |
Возвращает строку, представляющую специфицированный объект. Переопределяет метод .
|
Возвращает примитивное значение объекта Boolean. Переопределяет метод . | |
Кроме того, этот объект наследует методы и из .
Примеры
Следующий пример создаёт объекты Boolean с начальными значениями false:
bNoParam = new Boolean()
bZero = new Boolean(0)
bNull = new Boolean(null)
bEmptyString = new Boolean("")
bfalse = new Boolean(false)
Следующий пример создаёт объекты Boolean с начальными значениями true:
btrue = new Boolean(true)
btrueString = new Boolean("true")
bfalseString = new Boolean("false")
bSuLin = new Boolean("Su Lin")
Break
Оператор break используется для прерывания выполнения операторов цикла, switch или label.
Прерывает выполнение операторов цикла, switch
или label и передаёт управление оператору, следующему после прерванного цикла.
Реализован в | |
JavaScript 1.0, NES 2.0 | |
Версия ECMA | |
ECMA-262 (для непомеченной/unlabeled версии) ECMA-262, Edition 3 (для помеченной/labeled версии) | |
Синтаксис
break [label]
Параметр
Идентификатор, ассоциированный с меткой оператора.
Описание
Оператор break содержит необязательный лэйбл/label, который позволяет программе прерывать помеченный оператор. Операторы в помеченном операторе могут быть любого типа.
Примеры
В этой функции имеется оператор break, прерывающий выполнение цикла , если e равно 3, и возвращающий затем значение 3 * x.
function testBreak(x) {
var i = 0;
while (i < 6) {
if (i == 3)
break;
i++;
}
return i*x;
}
См. также
, , .
Call
Этой возможности нет в спецификации ECMA, соответствующей JavaScript 1.3, но ожидается её появление в следующей версии.
Позволяет вызывать (выполнять) метод одного объекта в контексте другого объекта (вызывающего объекта).
Метод из
|
|
Реализован в |
JavaScript 1.3
Синтаксис
call(thisArg[, arg1[, arg2[, ...]]])
Параметры
Параметр вызывающего объекта.
arg1, arg2, ... |
|
Параметр объекта.
Описание
Вы можете назначить другой объект this при вызове существующей функции. this ссылается на текущий объект, вызывающий объект.
С помощью call Вы можете написать метод один раз и наследовать его в другом объекте без необходимости переписывать метод для нового объекта.
Примеры
Можно использовать call для построения цепочки конструкторов объекта, аналогично Java. В следующем примере конструктор объекта product определён с двумя параметрами, name
и value. Другой объект, prod_dept, инициализирует свою уникальную переменную (dept) и вызывает конструктор для product в своём конструкторе для инициализации других переменных.
Function product(name, value){
this.name = name;
if(value > 1000)
this.value = 999;
else
this.value = value;
}
Function prod_dept(name, value, dept){
this.dept = dept;
product.call(this, name, value);
}
prod_dept.prototype = new product();
// поскольку 5 меньше 100, значение устанавливается
cheese = new prod_dept("feta", 5, "food");
// поскольку 5000 больше 1000, значение будет 999
car = new prod_dept("honda", 5000, "auto");
См. также
.
Метод. Вызывает метод из JavaScript. Эквивалентен "this.methodName(args[0], args[1], ...)" в JavaScript.
Объявление
public Object call(String methodName, Object args[])
Ceil
Возвращает наименьшее целое, больше или равное данному числу.
Метод из
|
|
Static
|
Реализован в |
JavaScript 1.0, NES 2.0
|
Версия ECMA |
ECMA-262
Синтаксис
ceil(x)
Параметр
Число.
Описание
Поскольку ceil это static-метод из Math, Вы всегда используете его так: Math.ceil(), а не как метод Math-объекта, созданного Вами.
Примеры
Эта функция возвращает наименьшее целое, больше или равное переменной x:
function getCeil(x) {
return Math.ceil(x)
}
Если Вы передадите 45.95 в getCeil, он возвратит 46; если -45.95, он возвратит -45.
См. также
.
CharAt
Возвращает специфицированные символы из строки.
Метод из
|
|
Реализован в
| JavaScript 1.0, NES 2.0
|
Версия ECMA |
ECMA-262
Синтаксис
charAt(index)
Параметры
Целое, начиная от 0, и меньше размера строки на 1.
Описание
Символы строки индексируются слева направо. Индекс первого символа равен 0, индекс последнего символа строки с названием StringName равен StringName.length - 1. если предоставляемый Вами индекс выходит за рамки этого диапазона, JavaScript возвращает пустую строку.
Примеры
Следующий пример отображает символы из различных точек строки "Brave new world":
var anyString="Brave new world"
document.writeln("The character at index 0 is " + anyString.charAt(0))
document.writeln("The character at index 1 is " + anyString.charAt(1))
document.writeln("The character at index 2 is " + anyString.charAt(2))
document.writeln("The character at index 3 is " + anyString.charAt(3))
document.writeln("The character at index 4 is " + anyString.charAt(4))
Отображение будет таким:
The character at index 0 is B
The character at index 1 is r
The character at index 2 is a
The character at index 3 is v
The character at index 4 is e
См. также
, , .
CharCodeAt
Возвращает число, обозначающее Unicode-значение символа, находящегося в строке по данному индексу.
Метод из
|
|
Реализован в |
JavaScript 1.2, NES 3.0
JavaScript 1.3: возвращает Unicode-значение вместо значения ISO-Latin-1.
Версия ECMA | |
ECMA-262 | |
Синтаксис
charCodeAt([index])
Параметры
index |
Целое, начиная от 0, и меньше размера строки на 1. Значение по умолчанию 0. | |
Описание
Значения Unicode находятся в диапазоне от 0 до 65,535. Первые 128 значений Unicode напрямую совпадают с набором ASCII-символов. Информацию о Unicode см. в книге
.
Обратная Совместимость
JavaScript 1.2.
Метод charCodeAt возвращает число, обозначающее значение из кодового набора ISO-Latin-1 для символа, находящегося по данному индексу. Набор ISO-Latin-1 имеет диапазон от 0 to 255. Символы от 0 до 127 напрямую совпадают с набором ASCII-символов.
Пример
Этот пример возвращает 65, значение Unicode для A.
"ABC".charCodeAt(0) // возвращает 65
Что Вы Уже Должны Знать
Предполагается, что Вы уже имеете:
Общее понятие об Internet и World Wide Web (WWW).
Хорошие навыки работы в HyperText Markup Language (HTML).
Некоторый опыт программирования в таких языках, как C или Visual Basic (желателен, но не обязателен).
ClassName
Полное квалифицированное имя Java-класса в пакетах, кроме пакетов netscape, java или sun, доступного (класса) в JavaScript.
Свойство из
|
|
Реализовано в |
JavaScript 1.1, NES 2.0
Синтаксис
Packages.className
где classname это полное квалифицированное имя Java-класса.
Описание
Вы обязаны использовать свойство className объекта Packages для доступа к классам вне пакетов netscape, sun и java.
Примеры
Следующий код получает в JavaScript доступ к конструктору класса CorbaObject в пакете myCompany:
var theObject = new Packages.myCompany.CorbaObject()
Здесь значением свойства className
является myCompany.CorbaObject, полное квалифицированное имя пути класса CorbaObject.
Comment
Авторское описание действий, выполняемых кодом. Комментарии игнорируются интерпретатором.
Реализован в
|
JavaScript 1.0, NES 2.0
|
Версия ECMA
| ECMA-262
Синтаксис
// текст однострочного комментария
/*
текст многострочного комментария */
Описание
JavaScript поддерживает комментарии в стиле Java:
Однострочному комментарию предшествует двойная наклонная черта (//).
Комментарии, занимающие несколько строк, заключаются между символами /* и */.
Примеры
// Это однострочный комментарий.
/* Это многострочный комментарий. Он может быть любого размера,
и Вы можете сюда что угодно. */
Copyright © 2000 Все права зарезервированы.
Дата последнего обновления: 28 сентября 2000 г.
Concat
Объединяет два массива и возвращает новый массив.
Чей метод
|
|
Реализован в
| JavaScript 1.2, NES 3.0
|
Версия ECMA |
ECMA-262
Синтаксис
concat(arrayName2, arrayName3, ..., arrayNameN)
Параметры
Объединяемые массивы.
Описание
concat
не изменяет оригиналы массивов, но возвращает копию "на один уровень глубже", которая содержит копии элементов, скомбинированных из массивов-оригиналов. Элементы оригинальных массивов копируются в новый массив так:
Ссылки на объекты (а не реальные объекты): concat
копирует ссылки на объекты в новый массив. И оригинальный, и новый массивы ссылаются на один объект. Если объект, на который ссылаются, изменяется, изменения видны и новом, и в оригинальном массивах.
Строки и числа (не объекты и ): concat
копирует строки и числа в новый массив. Изменения строк и чисел одного массива не влияют на другие массивы.
Если к любому массиву добавляется новый элемент, на другой массив это не влияет.
Следующий код объединяет два массива:
alpha=new Array("a","b","c")
numeric=new Array(1,2,3)
alphaNumeric=alpha.concat(numeric) // создаёт массив ["a","b","c",1,2,3]
Следующий код объединяет три массива:
num1=[1,2,3]
num2=[4,5,6]
num3=[7,8,9]
nums=num1.concat(num2,num3) // создаёт массив [1,2,3,4,5,6,7,8,9]
Объединяет текст двух или более строк и возвращает новую строку.
Метод из
|
|
Реализован в |
JavaScript 1.2, NES 3.0
Синтаксис
concat(String2, String3[, ..., StringN])
Параметры
Строки, объединяемые в данную строку.
Описание
concat объединяет текст двух или более строк и возвращает новую строку. Изменения в тексте одной строки не влияют на другие строки.
Пример
В этом примере две строки объединяются в новую строку.
s1="Oh "
s2="what a beautiful "
s3="mornin'."
s4=s1.concat(s2,s3) // возвращает "Oh what a beautiful mornin'."
Const
Объявляет именованную константу только-для-чтения.
Реализован в | |
JavaScript 1.5, NES 6.0 (расширение Netscape, только C-машина). | |
Синтаксис
const constname [= value] [..., constname [= value] ]
Параметры
Имя константы. Оно может быть любым разрешённым идентификатором.
value |
|
Значение константы. Оно может быть любым разрешённым выражением.
Описание
Создаёт константу, которая может быть глобальной или локальной по отношению к функции, в которой объявляется. Константы следуют тем же правилам области видимости, что и переменные.
Значение константы не может быть изменено с помощью присвоения, и константа не может быть переобъявлена.
Константа не может иметь то же имя, что и функция или переменная в той же области видимости.
Примеры
Скрипт:
const a = 7;
document.writeln("a равно " + a + ".");
даёт на выходе:
a равно 7.
Constructor
Специфицирует функцию, которая создаёт прототип объекта. Заметьте, что значением этого свойства является ссылка на саму функцию, а не строка, содержащая имя функции.
Свойство из
|
|
Реализовано в |
JavaScript 1.1, NES 2.0
|
Версия ECMA |
ECMA-262
Описание
См. .
Специфицирует функцию, создающую прототип объекта. Заметьте, что значением этого свойства является ссылка на саму функцию, а не строка. содержащая имя функции.
Свойство из
|
|
Реализовано в |
JavaScript 1.1, NES 2.0
|
Версия ECMA
| ECMA-262
Описание
См. .
Специфицирует функцию, создающую прототип объекта. Заметьте, что значением этого свойства является ссылка на саму функцию, а не строка, содержащая имя функции.
Свойство из
|
|
Реализовано в
| JavaScript 1.1, NES 2.0
|
Версия ECMA |
ECMA-262
Описание
См. .
Специфицирует функцию, создающую прототип объекта. Заметьте, что значением этого свойства является ссылка на функцию, а не строка, содержащая имя функции.
Свойство из
|
|
Реализовано в
| JavaScript 1.1, NES 2.0 |
Версия ECMA
| ECMA-262
Описание
См. .
Специфицирует функцию, создающую прототип объекта. Заметьте, что значением этого свойства является ссылка на саму функцию, а не строка с именем функции.
Свойство из
|
|
Реализовано в
| JavaScript 1.1, NES 2.0
|
Версия ECMA |
ECMA-262
Описание
Все объекты наследуют свойство constructor из своих prototype:
o = new Object // или o = {} в JavaScript 1.2
o.constructor == Object
a = new Array // или a = [] в JavaScript 1.2
a.constructor == Array
n = new Number(3)
n.constructor == Number
Хотя Вы не можете конструировать большинство HTML-объектов, можно выполнять сравнение. Например,
document.constructor == Document
document.form3.constructor == Form
Примеры
Здесь создаётся прототип, Tree, и объект этого типа, theTree. Затем отображается свойство constructor объекта theTree.
function Tree(name) {
this.name=name
}
theTree = new Tree("Redwood")
document.writeln("<B>theTree.constructor is</B> " +
theTree.constructor + "<P>")
Этот пример даёт такой вывод:
theTree.constructor is function Tree(name) { this.name = name; }
Специфицирует функцию, которая создаёт прототип объекта. Обратите внимание, что значением этого свойств является ссылка на саму функцию, а не строка с именем функции.
Свойство из
|
|
Реализовано в
| JavaScript 1.1, NES 2.0 |
Версия ECMA
| ECMA-262
Описание
См. .
Специфицирует функция, которая создаёт прототип объекта. Заметьте, что значением этого свойства является ссылка на функцию, а не строка, содержащая имя функции.
Свойство из
|
|
Реализовано в
| JavaScript 1.1, NES 2.0
|
Версия ECMA |
ECMA-262
Описание
См. .
Continue
Рестарт оператора while, do-while, for, или label.
Реализован в | |
JavaScript 1.0, NES 2.0 | |
Версия ECMA | |
ECMA-262 (для непомеченной/unlabeled версии) ECMA-262, Edition 3 (для помеченной/labeled версии) | |
Синтаксис
continue [label]
Параметр
Идентификатор, ассоциированный с меткой оператора.
Описание
По контрасту с оператором , continue не прерывает полностью выполнение оператора. Вместо этого он:
в цикле перескакивает обратно на condition.
в цикле перескакивает на выражение update.
Оператор continue может теперь содержать необязательный лэйбл, который позволяет программе прерывать выполнение помеченного оператора и продолжить выполнение специфицированного помеченного оператора. Этот тип continue обязан находиться в операторе цикла, идентифицированном лэйблом, используемым оператором continue.
Примеры
Пример 1.
Это цикл while, с оператором , выполняемым, если i имеет значение 3. Таким образом, n принимает значения 1, 3, 7 и 12.
i = 0;
n = 0;
while (i < 5) {
i++;
if (i == 3)
continue;
n += i;
}
Пример 2.
С это примере оператор, помеченный checkiandj, содержит оператор, помеченный checkj. Если обнаружен continue, программа продолжает от верхней точки оператора checkj. Каждый раз при обнаружении continue, checkj повторяет итерацию, пока условие не вернёт false. Если false возвращено, выполняется оставшаяся часть оператора checkiandj. checkiandj повторяет итерацию, пока условие не вернёт false. Если false возвращено, программа продолжает выполняться с точки после оператора checkiandj.
Если continue имеет метку из checkiandj, программа будет продолжать выполняться от верхней точки оператора checkiandj.
checkiandj :
while (i<4) {
document.write(i + "<BR>");
i+=1;
checkj :
while (j>4) {
document.write(j + "<BR>");
j-=1;
if ((j%2)==0)
continue checkj;
document.write(j + " is odd.<BR>");
}
document.write("i = " + i + "<br>");
document.write("j = " + j + "<br>");
}
См. также
, .
Cos
Возвращает косинус числа.
Метод из
|
|
Static
|
Реализован в |
JavaScript 1.0, NES 2.0
|
Версия ECMA |
ECMA-262
Синтаксис
cos(x)
Параметр
Число.
Описание
Метод cos возвращает числовое значение в диапазоне от -1 до 1, представляющее косинус угла.
Поскольку cos это static-метод из Math, Вы всегда используете его так: Math.cos(), а не как метод Math-объекта, созданного Вами.
Пример
Эта функция возвращает косинус переменной x:
function getCos(x) {
return Math.cos(x)
}
Если x равен 2*Math.PI, getCos возвращает 1; если x
равен Math.PI, метод getCos возвращает -1.
См. также
, , , , , .
Date
Позволяет работать с датой и временем.
Объект ядра
|
Реализован в
|
JavaScript 1.0, NES 2.0
JavaScript 1.1: добавлено свойство prototype.
JavaScript 1.3: убрана зависимость от платформы, чтобы дать универсальное поведение на всех платформах; добавлен параметр ms_num в конструктор Date; добавлены методы , , , , и UTC-методы (такие как и ).
|
Версия ECMA
| ECMA-262
Создание
Конструктор Date:
new Date()
new Date(milliseconds)
new Date(dateString)
new Date(yr_num, mo_num, day_num
[, hr_num, min_num, sec_num, ms_num])
Версии до JavaScript 1.3:
new Date()
new Date(milliseconds)
new Date(dateString)
new Date(yr_num, mo_num, day_num[, hr_num, min_num, sec_num])
Параметры
Целочисленное значение - количество миллисекунд, прошедших после 1 января 1970 года, 00:00:00.
dateString | |
Строковое значение, представляющее дату. Строка должна иметь формат, распознаваемый методом .
yr_num, mo_num, day_num | |
Целые значения, представляющие часть даты. Как целочисленное значение, месяц представляется цифрами от 0 до 11, где 0=January и 11=December.
hr_num, min_num, sec_num, ms_num | |
Целые значения, представляющие часть даты.
Описание
Если Вы не задаёте никаких аргументов, конструктор создаёт объект Date для текущей даты и времени в соответствии с локальным/системным временем. Если Вы задаёте несколько аргументов, но не все, отсутствующие аргументы устанавливаются в 0. Если Вы задаёте несколько аргументов, Вы обязаны ввести как минимум year, month и day. Можно опустить hours, minutes, seconds и milliseconds.
Дата измеряется в миллисекундах, прошедших после полуночи 01 января 1970 года по Гринвичу/UTC. Один день состоит из 86,400,000 миллисекунд. Объект Date имеет диапазон от -100,000,000 до 100,000,000 дней относительно 01 января 1970 года по UTC.
Объект Date имеет универсальное поведение на всех платформах.
Объект Date поддерживает несколько UTC-методов (универсальных), а также методы работы с локальным временем. UTC, известное также как Greenwich Mean Time (GMT)/время по Гринвичу, ссылается на время, установленное стандартом World Time Standard. Локальное время это время, известное компьютеру, на котором выполняется JavaScript.
Для обеспечения перехода в новое тысячелетие (2000 год) Вы всегда должны специфицировать год полностью; например, использовать 1998, а не 98. Чтобы помочь Вам в установке полный год, JavaScript имеет методы getFullYear, setFullYear, getFullUTCYear
и setFullUTCYear.
Следующий пример возвращает время в миллисекундах, прошедшее в период от timeA до timeB:
timeA = new Date();
// Здесь операторы, выполняющие какие-либо действия.
timeB = new Date();
timeDifference = timeB - timeA;
Обратная Совместимость
JavaScript 1.2 и более ранние версии.
Объект Date работает так:
Даты до 1970 года недопустимы.
JavaScript зависит от специфики поведения даты на конкретной платформе; поведение объекта Date меняется, в зависимости от платформы.
Свойства. Резюме.
Свойство
Описание
| |
Специфицирует функцию, создающую прототип объекта. | |
|
Позволяет добавлять свойства к объекту Date. | |
Методы. Резюме.
Метод
Описание
| | |
Возвращает день месяца для специфицированной даты в соответствии с локальным временем.
| | |
Возвращает день недели для специфицированной даты в соответствии с локальным временем.
|
|
Возвращает year/год для специфицированной даты в соответствии с локальным временем.
|
|
Возвращает hour/час для специфицированной даты в соответствии с локальным временем. |
| Возвращает milliseconds/миллисекунды для специфицированной даты в соответствии с локальным временем.
|
|
Возвращает minutes/минуты для специфицированной даты в соответствии с локальным временем.
| | |
Возвращает month/месяц для специфицированной даты в соответствии с локальным временем.
| | |
Возвращает seconds/секунды для специфицированной даты в соответствии с локальным временем.
|
|
Возвращает числовое значение, соответствующе времени для специфицированной даты в соответствии с локальным временем.
| | |
Возвращает смещение часового пояса в минутах для данной местности.
| |
Возвращает день (число) месяца в специфицированной дате в соответствии с универсальным временем. | |
| |
Возвращает день недели в специфицированной дате в соответствии с универсальным временем. | |
| |
Возвращает год в специфицированной дате в соответствии с универсальным временем. | |
| |
Возвращает часы в специфицированной дате в соответствии с универсальным временем. | |
| |
Возвращает миллисекунды в специфицированной дате в соответствии с универсальным временем. | |
| |
Возвращает минуты в специфицированной дате в соответствии с универсальным временем. | |
| |
Возвращает месяц в специфицированной дате в соответствии с универсальным временем. | |
| |
Возвращает секунды в специфицированной дате в соответствии с универсальным временем. | |
|
Возвращает год в специфицированной дате в соответствии с местным временем. | |
|
Возвращает количество миллисекунд, прошедших до данной даты после 2 января 1970 года, 00:00:00 местного времени. | |
| |
Устанавливает число/день месяца в специфицированной дате в соответствии с местным временем. | |
| |
Устанавливает полный год в специфицированной дате в соответствии с местным временем. | |
|
Устанавливает часы в специфицированной дате в соответствии с местным временем. |
|
| |
Устанавливает миллисекунды в специфицированной дате в соответствии с местным временем. | |
|
Устанавливает минуты в специфицированной дате в соответствии с местным временем. | |
| |
Устанавливает месяц в специфицированной дате в соответствии с местным временем. | |
| |
Устанавливает секунды в специфицированной дате в соответствии с местным временем. | |
| |
Устанавливает значение объекта Date в соответствии с местным временем. | |
| |
Устанавливает число/день месяца в специфицированной дате в соответствии с универсальным временем. |
|
| |
Устанавливает полный год в специфицированной дате в соответствии с универсальным временем. | |
| |
Устанавливает часы в специфицированной дате в соответствии с универсальным временем. | |
| |
Устанавливает миллисекунды в специфицированной дате в соответствии с универсальным временем. | |
| |
Устанавливает минуты в специфицированной дате в соответствии с универсальным временем. | |
| |
Устанавливает месяц в специфицированной дате в соответствии с универсальным временем. | |
| |
Устанавливает секунды в специфицированной дате в соответствии с универсальным временем. | |
|
Устанавливает год в специфицированной дате в соответствии с локальным временем. | |
|
Конвертирует дату в строку, используя соглашения Internet GMT. | |
| |
Конвертирует дату в строку, используя соглашения по текущему времени. | |
|
Возвращает литерал объекта, представляющий специфицированный объект Date; Вы можете использовать это значение для создания нового объекта. Переопределяет метод . | |
| |
Возвращает строку, представляющую специфицированный объект Date. Переопределяет метод . | |
| |
Конвертирует дату в строку, используя соглашение по универсальному времени. | |
|
Возвращает количество миллисекунд в объекте Date, прошедших после 1 января 1970 года, 00:00:00 универсального времени. | |
| |
Возвращает примитивное значение объекта Date. Переопределяет метод . | |
Кроме того, Этот объект наследует методы и из .
Примеры
Вот разные примеры назначения времени:
today = new Date()
birthday = new Date("December 17, 1995 03:24:00")
birthday = new Date(95,11,17)
birthday = new Date(95,11,17,3,24,0)
-- (Декремент/Уменьшение)
Операция декремента используется так:
var-- или --var
Выполняет декремент (вычитает единицу) своего операнда и возвращает значение. Если используется как постфикс
(например, x--), то возвращает значение, бывшее до выполнения декремента.
Если используется как префикс (например, --x), тогда возвращает, после выполнения декремента, новое значение.
Например, если x равен 3, то операция y = x-- устанавливает y в 3 и выполняет декремент x до 2. Если x равен 3, то операция y = --x выполняет декремент x до 2 и устанавливает y в 2.
Delete
Операция delete удаляет объект, свойство объекта или элемент массива по специфицированному индексу.
Реализована в
| JavaScript 1.2, NES 3.0
|
Версия ECMA | ECMA-262
Синтаксис
delete objectName
delete objectName.property
delete objectName[index]
delete property // верно только внутри оператора with
Параметры
Имя объекта.
property | |
Удаляемое свойство.
index | |
Целое число, представляющее индекс массива для удаления.
Описание
Четвёртая форма операции верна только внутри оператора with при удалении свойства объекта.
Вы можете использовать операцию delete
для удаления переменных, объявленных неявно, но не переменных, объявленных оператором var.
Если операция delete
выполнена успешно, она устанавливает свойство или элемент в undefined. Операция delete
возвращает true, если операция возможна; возвращает false, если операция невозможна.
x=42
var y= 43
myobj=new Number()
myobj.h=4 // создаёт свойство h
delete x // возвращает true (может удаляться, если объявлена неявно)
delete y //
возвращает false (не может удаляться, если объявлена с помощью var)
delete Math.PI //
возвращает false (предопределённые свойства не могут удаляться)
delete myobj.h //
code>возвращает true (свойства, определённые пользователем, могут удаляться)
delete myobj //
возвращает true (объекты могут удаляться)
Удаление массива элементов.
Если Вы удаляете элемент массива, размер массива не меняется. Например, если удалить a[3], то a[4] останется a[4], а a[3] - undefined.
Если операция delete удаляет элемент массива, этот элемент больше не присутствует в массиве. В следующем примере trees[3] удаляется с помощью delete.
trees=new Array("redwood","bay","cedar","oak","maple")
delete trees[3]
if (3 in trees) {
// это не выполняется
}
Если Вы хотите, чтобы элемент массива существовал, но имел значение undefined, используйте ключевое слово undefined вместо операции delete.
В следующем примере элементу trees[3] присваивается значение undefined, и элемент массива продолжает существовать:
trees=new Array("redwood","bay","cedar","oak","maple")
trees[3]=undefined
if (3 in trees) {
//
это выполняется
}
Do...while
Выполняет специфицированные операторы, пока при тестировании условия не будет возвращено false. Операторы выполняются как минимум однократно.
Реализован в | |
JavaScript 1.2, NES 3.0 | |
Версия ECMA | |
ECMA 262, Edition 3 | |
Синтаксис
do
statements
while (condition);
Параметры
Блок операторов который выполняется минимум один раз и выполняется повторно до тех пор, пока проверка условия возвращает true.
condition | |
Вычисляется после каждого прохождения цикла. Если условие вычисляется в true, операторы предыдущего блока выполняются повторно. Если проверка условия возвращает false, управление передаётся оператору, следующему после do while.
Примеры
Цикл do loop итерирует минимум один раз и повторяет итерации, пока i не меньше 5.
do {
i+=1;
document.write(i);
while (i<5);
E
Константа Эйлера и база натуральных логарифмов, приблизительно 2.718.
Свойство из
|
|
Static, Read-only\Только-для-Чтения |
Реализован в
| JavaScript 1.0, NES 2.0 |
Версия ECMA
| ECMA-262
Описание
Поскольку E это static-свойство из Math, Вы всегда используете его так:Math.E, а не как свойство Math-объекта, созданного Вами.
Пример
Эта функция возвращает константу Эйлера:
function getEuler() {
return Math.E
}
Equals
Метод. Определяет, ссылаются ли два объекта JSObject на один и тот же экземпляр.
Переопределяет: equals в классе java.lang.Object.
Объявление
public boolean equals(Object obj)
Обратная Совместимость
JavaScript 1.3. В JavaScript 1.3 и более ранних версиях Вы можете использовать метод equals
из java.lang.Object или оператор == для вычисления двух объектов JSObject.
В более ранних версиях одинаковые объекты JSObject
могут появляться как разные Java-объекты. Вы можете использовать метод equals для определения, ссылаются ли два объекта JSObject на один и тот же экземпляр.
Eval
Метод. Вычисляет выражение JavaScript. Выражение это строка исходного кода JavaScript, который будет вычисляться в контексте, заданном "this".
Объявление
public Object eval(String s)
Не рекомендуется. Вычисляет строку JavaScript-кода в контексте объекта.
Метод из
|
|
Реализован в
| JavaScript 1.1, NES 2.0
JavaScript 1.2, NES 3.0: не рекомендуется как метод объектов; остаётся как функция верхнего уровня.
JavaScript 1.4: удалён как метод объектов.
Синтаксис
eval(string)
Параметр
Любая строка, представляющая выражение JavaScript, оператор или последовательность операторов. Это выражение может содержать переменные и свойства существующих объектов.
Описание
Метод eval больше не доступен как метод из Object. Используется функция верхнего уровня .
Обратная Совместимость
JavaScript 1.2 и 1.3.
eval как метод из Object и каждого объекта, полученного из Object, не рекомендуется к использованию (но имеется).
JavaScript 1.1.
eval является методом из Object и каждого объекта, полученного из Object.
См. также
.
Exec
Выполняет поиск совпадений в специфицированной строке. Возвращает результирующий массив.
Метод из
| |
Реализован в
| JavaScript 1.2, NES 3.0
|
Версия ECMA | ECMA 262, Edition 3 (только первый синтаксис)
Синтаксис
regexp.exec([str])
regexp([str])
Параметры
Имя регулярного выражения. Может быть именем переменной или литералом.
str | |
Строка, которая проверяется на совпадение с регулярным выражением.
Описание
Как видно из описания синтаксиса, метод exec
регулярного выражения может вызываться явно (regexp.exec(str)), или неявно (regexp(str)).
Если поиск выполняется, чтобы просто найти true или false, используйте метод или метод String .
Если совпадение найдено, метод exec возвращает массив и обновляет свойства объекта регулярного выражения.
Если совпадение не найдено, метод exec возвращает null.
Рассмотри пример:
<SCRIPT LANGUAGE="JavaScript1.2">
//Совпадение с d с последующими одним или более b, с последующим d
//Запомнить совпавшие b с последующим d
//Игнорировать регистр
myRe=/d(b+)(d)/ig;
myArray = myRe.exec("cdbBdbsbz");
</SCRIPT>
В таблице показаны результаты работы этого скрипта:
Объект
Свойство/Индекс
Описание
Пример
myArray | |
|
Контекст myArray.
|
["dbBd", "bB", "d"]
index | |
Индекс совпадений в строке с базой 0.
|
1
input | |
Строка-оригинал.
| cdbBdbsbz[0] | |
Последние совпавшие символы. |
dbBd
[1], ...[n] |
|
Совпавшие подстроки в кавычках, если имеются (подстроки). Количество подстрок в кавычках не ограничено.
| [1] = bB
[2] = dmyRe | lastIndex | |
Индекс, с которого начать следующий поиск.
| 5
ignoreCase | |
Указывает, использовался ли флаг "i" для игнорирования регистра.
|
true
global | |
Указывает, использовался ли флаг "g" для глобального поиска совпадений.
|
true
multiline | |
Указывает, использовался ли флаг "m" для глобального поиска совпадений.
|
false
source | |
Текст патэрна.
| d(b+)(d)
Если Ваше регулярное выражение использует флаг "g", Вы можете использовать метод exec
несколько раз для поиска успешных совпадений в той же строке. Если Вы это сделаете, поиск начинается с подстроки в str, специфицированной свойством lastIndex
в регулярном выражении. Например, расмотрим этот скрипт:
<SCRIPT LANGUAGE="JavaScript1.2">
myRe=/ab*/g;
str = "abbcdefabh";
myArray = myRe.exec(str);
document.writeln("Found " + myArray[0] +
". Next match starts at " + myRe.lastIndex)
mySecondArray = myRe.exec(str);
document.writeln("Found " + mySecondArray[0] +
". Next match starts at " + myRe.lastIndex)
</SCRIPT>
Будет выведен следующий текст:
Found abb. Next match starts at 3
Found ab. Next match starts at 9
Примеры
Здесь пользователь вводит имя, и скрипт выполняет поиск совпадений относительно этого ввода. Затем он прогоняет массив по циклу для поиска других имён, совпадающих с пользовательским именем.
Этот скрипт предполагает, что первые имена зарегистрированных участников вечеринки предварительно загружены в массив A, возможно, чрез получение их из базы данных.
<HTML>
<SCRIPT LANGUAGE="JavaScript1.2">
A = ["Frank", "Emily", "Jane", "Harry", "Nick", "Beth", "Rick",
"Terrence", "Carol", "Ann", "Terry", "Frank", "Alice", "Rick",
"Bill", "Tom", "Fiona", "Jane", "William", "Joan", "Beth"]
function lookup() {
firstName = /\w+/i();
if (!firstName)
window.alert (RegExp.input + " isn't a name!");
else {
count = 0;
for (i=0; i<A.length; i++)
if (firstName[0].toLowerCase() == A[i].toLowerCase()) count++;
if (count ==1)
midstring = " other has ";
else
midstring = " others have ";
window.alert ("Thanks, " + count + midstring + "the same name!")
}
}
</SCRIPT>
Enter your first name and then press Enter.
<FORM> <INPUT TYPE:"TEXT" NAME="FirstName" onChange="lookup(this);"> </ FORM>
</HTML>
Exp
Возвращает Ex, где x это аргумент, а E это константа Эйлера, база натуральных логарифмов.
Метод из
|
|
Static |
Реализован в
| JavaScript 1.0, NES 2.0 |
Версия ECMA
| ECMA-262
Синтаксис
exp(x)
Параметр
Число.
Описание
Поскольку exp это static-метод из Math, Вы всегда используете его так: Math.exp(), а не как метод Math-объекта, созданного Вами.
Пример
Эта функция возвращает экспоненциальное значение переменной x:
function getExp(x) {
return Math.exp(x)
}
Если Вы передаёте в getExp значение 1, он возвращает 2.718281828459045.
См. также
, , .
Export
Позволяет обозначенному/signed скрипту предоставлять свойства, функции и объекты другим обозначенным или необозначенным/unsigned скриптам.
Эта возможность отсутствует в ECMA 262, Edition 3.
Реализован в
| JavaScript 1.2, NES 3.0
Синтаксис
export name1, name2, ..., nameN
export *
Параметры
Список экспортируемых свойств, функций и объектов.
* |
|
Экспортируются все свойства, функции и объекты этого скрипта.
Описание
Обычно информация в обозначенном/signed скрипте доступна только скриптам, обозначенным теми же принципалами/principals (найду перевод поточнее - заменю прим перев.). Экспортируя свойства, функции или объекты, обозначенный скрипт делает эту информацию доступной любому скрипту (signed или unsigned). Получающий скрипт использует оператор import для доступа к информации.
См. также
.
Fixed
Строка выводится моноширинным шрифтом, как при использовании тэга TT.
Метод из
|
|
Реализован в
|
JavaScript 1.0, NES 2.0
Синтаксис
fixed()
Параметры
Отсутствуют.
Описание
Используйте метод fixed с методами write или writeln для форматирования и отображения строки в документе. В серверном JavaScript используйте для отображения строки функцию write.
Примеры
В этом примере используется метод fixed для изменения форматирования строки:
var worldString="Hello, world"
document.write(worldString.fixed())
Вывод будет таким же, как и в нижеследующем HTML:
<TT>Hello, world</TT>
Floor
Возвращает наибольшее целое, меньше или равное данному числу.
Метод из
|
|
Static |
Реализован в
| JavaScript 1.0, NES 2.0 |
Версия ECMA
| ECMA-262
Синтаксис
floor(x)
Параметр
Число.
Описание
Поскольку floor это static-метод из Math, Вы всегда используете его так: Math.floor(), а не как метод Math-объекта, созданного Вами.
Пример
Эта функция возвращает floor-значение переменной x:
function getFloor(x) {
return Math.floor(x)
}
Если Вы передаёте 45.95 в getFloor, он возвращает 45; если передаёте -45.95, он возвращает -46.
См. также
.
Fontcolor
Строка выводится специфицированным цветом, как при использовании тэга <FONT COLOR=color>.
Метод из
|
|
Реализован в
| JavaScript 1.0, NES 2.0
Синтаксис
fontcolor(color)
Параметры
color |
Строка содержит цвет в виде 16-ричного RGB-триплета или в виде строкового литерала. Названия цветов - строковых литералов - даны в книге . | |
Описание
Используйте метод fontcolor с методами write или writeln для форматирования и отображения строки в документе. В серверном JavaScript используйте для отображения строки функцию write.
Если Вы вводите цвет как 16-ричный RGB-триплет, Вы обязаны использовать формат rrggbb. Например, 16-ричные RGB-значения для цвета salmon: red=FA, green=80, blue=72, соответственно, RGB-триплет цвета salmon будет "FA8072".
Метод fontcolor переопределяет значение, установленное свойством fgColor.
Примеры
В этом примере метод fontcolor используется для изменения цвета строки:
var worldString="Hello, world"
document.write(worldString.fontcolor("maroon") +
" is maroon in this line")
document.write("<P>" + worldString.fontcolor("salmon") +
" is salmon in this line")
document.write("<P>" + worldString.fontcolor("red") +
" is red in this line")
document.write("<P>" + worldString.fontcolor("8000") +
" is maroon in hexadecimal in this line")
document.write("<P>" + worldString.fontcolor("FA8072") +
" is salmon in hexadecimal in this line")
document.write("<P>" + worldString.fontcolor("FF00") +
" is red in hexadecimal in this line")
Вывод будет таким же, как и в нижеследующем HTML:
<FONT COLOR="maroon">Hello, world</FONT> is maroon in this line
<P><FONT COLOR="salmon">Hello, world</FONT> is salmon in this line
<P><FONT COLOR="red">Hello, world</FONT> is red in this line
<FONT COLOR="8000">Hello, world</FONT>
is maroon in hexadecimal in this line
<P><FONT COLOR="FA8072">Hello, world</FONT>
is salmon in hexadecimal in this line
<P><FONT COLOR="FF00">Hello, world</FONT>
is red in hexadecimal in this line
Fontsize
Строка выводится шрифтом специфицированного размера, как при использовании тэга <FONT SIZE=size>.
Метод из
|
|
Реализован в
| JavaScript 1.0, NES 2.0
Синтаксис
fontsize(size)
Параметры
Целое число от 1 до 7; строка, представляющая целое число в диапазоне от 1 до 7.
Описание
Используйте метод fontsize с методами write или writeln для форматирования и отображения строки в документе. В серверном JavaScript используйте для отображения строки функцию write.
Если Вы специфицируете размер как целое число, Вы устанавливаете размер строки StringName в один из семи предопределённых размеров. Если Вы специфицируете размер как строку, например, "-2", Вы уточняете размер строки StringName относительно размера, установленного в тэге BASEFONT.
Примеры
В этом примере методы работы со строками используются для изменения размера строки:
var worldString="Hello, world"
document.write(worldString.small())
document.write("<P>" + worldString.big())
document.write("<P>" + worldString.fontsize(7))
Вывод будет таким же, как и в нижеследующем HTML:
<SMALL>Hello, world</SMALL>
<P><BIG>Hello, world</BIG>
<P><FONTSIZE=7>Hello, world</FONTSIZE>
См. также
,
.
For
Создаёт цикл из трёх необязательных выражений, заключённых в скобки и разделённых точкой с запятой, и блока операторов , выполняемых в цикле.
Реализован в | |
JavaScript 1.0, NES 2.0 | |
Версия ECMA | |
ECMA-262 | |
Синтаксис
for ([initial-expression]; [condition]; [increment-expression]) {
statements
}
Параметры
Оператор или объявление переменной. Обычно используется для инициализации переменной счётчика цикла. Это выражение может объявлять новую переменную с помощью ключевого слова var. Эти переменные являются локальными относительно функции, а не цикла.
condition |
|
Условие, вычисляемое при каждой итерации цикла. Если вычисляется в true, выполняются операторы statements. Эта проверка условия не является обязательной. При её отсутствии, условие всегда вычисляется в true.
increment-expression |
|
Это выражение обычно используется для инкремента или обновления переменной счётчика цикла.
statements |
|
Блок операторов, которые выполняются, пока условие true. Это может быть один или несколько операторов. Хотя это и не требуется, хорошим стилем будет выделить эти операторы отступом относительно начала оператора for.
Примеры
Здесь оператор for начинается с объявления переменной i и её инициализации в 0. Он проверяет, что i меньше 9, выполняет два последующих оператора и увеличивает i на 1 после каждого прохода по циклу.
for (var i = 0; i < 9; i++) {
n += i;
myfunc(n);
}
For...in
Итерирует специфицированную переменную по всем свойствам объекта. Для каждого выделенного свойства JavaScript выполняет специфицированные операторы.
Реализован в | |
JavaScript 1.0, NES 2.0 | |
Версия ECMA | |
ECMA-262 | |
Синтаксис
for (variable in object) {
statements
}
Параметры
Переменная для итерации по каждому свойству, может быть объявлена ключевым словом var. Эта переменная локальна относительно функции, а не цикла.
object |
|
Объект, по свойствам которого происходит итерация.
statements |
|
Специфицирует операторы, выполняемые для каждого свойства.
Примеры
Здесь функция принимает в качестве аргументов объект и имя объекта . Затем выполняется итерация по всем свойствам объекта и возвращает строку со списком имён свойств и их значений.
function show_props(obj, objName) {
var result = "";
for (var i in obj) {
result += objName + "." + i + " = " + obj[i] + "\n";
}
return result;
}
FromCharCode
Возвращает строку, созданную путём использования специфицированной последовательности из значений Unicode.
Метод из
|
|
Static
|
Реализован в
| JavaScript 1.2, NES 3.0
JavaScript 1.3: используется значение Unicode, а не значение ISO-Latin-1.
Версия ECMA | |
ECMA-262 | |
Синтаксис
fromCharCode(num1, ..., numN)
Параметры
Последовательность чисел - значений Unicode.
Описание
Этот метод возвращает строку, а не String-объект.
Поскольку fromCharCode это static-метод объекта String, Вы всегда используете его как String.fromCharCode(), а не как метод String-объекта, созданного Вами.
Обратная Совместимость
JavaScript 1.2.
Метод fromCharCode возвращает строку, созданную путем использования специфицированной последовательности значений из набора кодов ISO-Latin-1.
Примеры
Этот пример возвращает строку "ABC".
String.fromCharCode(65,66,67)
Function
xxx Надеюсь, что я удалил все примеры с клиентской спецификой из этого файла.
Специфицирует строку кода JavaScript, компилируемого как функция.
Объект ядра
|
Реализован в
|
JavaScript 1.1, NES 2.0
JavaScript 1.2: добавлены свойства , ; добавлена возможность вложения функций.
JavaScript 1.3: добавлены методы ,
и ; не рекомендуется использовать свойство .
JavaScript 1.4: не рекомендуются свойства , ,
и (arguments
остаётся локальной переменной функции, а не свойством в Function).
|
Версия ECMA
|
ECMA-262
Создание
Конструктор Function:
new Function ([arg1[, arg2[, ... argN]],] FunctionBody)
Оператор Function (см. ):
Function name([param[, param[, ... param]]]) {
операторы
}
Параметры
Имена, используемые функцией в качестве имён формальных аргументов. Каждый обязан быть строкой - правильным идентификатором JavaScript; например "x" или "theValue".
FunctionBody | |
Строка операторов JavaScript, образующих определение функции.
name | |
Имя функции.
param | |
Имя аргумента, передаваемого функции. Функция может иметь до 255 аргументов.
statements | |
Операторы, образующие тело функции.
Описание
Function-объекты, созданные конструктором Function, вычисляются каждый раз, когда используются. Это менее эффективно, чем объявление функции и вызов её в Вашем коде, поскольку объявленные функции компилируются.
Чтобы возвратить значение, функция обязана содержать оператор , специфицирующий возвращаемое значение.
Все параметры передаются функции по значению; значение передаётся функции, но, если функция изменяет значение параметра, это изменение не отражается глобально или в вызывающей функции. Однако, если Вы передаёте функции объект в качестве параметра и функция изменяет свойства объекта, это изменение видно вне функции, как показано в следующем примере:
Function myFunc(theObject) {
theObject.make="Toyota"
}
mycar = {make:"Honda", model:"Accord", year:1998}
x=mycar.make // возвращает Honda
myFunc(mycar) // передаёт объект mycar функции
y=mycar.make // возвращает Toyota (prop было изменено функцией)
Ключевое слово this не относится к выполняемой в данный момент функции, поэтому Вы обязаны обращаться к Function-объектам по имени, даже в теле функции.
Доступ к аргументам функции через массив аргументов.
Вы можете обращаться к аргументам внутри функции через массив arguments. См. .
Специфицирование аргументов в конструкторе Function.
Этот код создаёт объект Function, принимающий два аргумента.
var multiply = new Function("x", "y", "return x * y")
Аргументы "x" и "y" являются именами формальных аргументов, которые используются в теле функции, "return x * y".
Вышеприведённый код присвоил функцию переменной multiply. Чтобы вызвать объект Function, Вы можете специфицировать имя переменной, как если бы это была функция, что показано в следующем примере:
var theAnswer = multiply(7,6)
var myAge = 50
if (myAge >=39) {myAge=multiply (myAge,.5)}
Присвоение функции переменной конструктором Function.
Предположим, Вы создали переменную multiply, используя конструктор Function, как показано в предыдущем разделе:
var multiply = new Function("x", "y", "return x * y")
Это аналогично объявлению следующей функции:
Function multiply(x,y) {
return x*y
}
Присвоение значения переменной с использованием конструктора Function похоже на объявление функции оператором Function, но есть и отличия:
Если Вы присваиваете функцию переменной, используя var multiply = new Function("..."), multiply
является переменной с текущим значением - ссылкой на функцию, созданную как new Function().
Если Вы создаёте функцию, используя Function multiply() {...}, multiply
не является переменной, это имя функции.
Вложение функций.
Вы можете вкладывать одну функцию в другую. Вложенная (внутренняя) функция является private по отношению к содержащей её (внешней) функции:
Доступ ко внутренней функции может быть получен только из операторов внешней функции.
Внутренняя функция может также использовать аргументы и переменные внешней функции. Внешняя функция не может использовать аргументы и переменные внутренней функции.
Следующий пример демонстрирует вложение функций:
Function addSquares (a,b) {
Function square(x) {
return x*x
}
return square(a) + square(b)
}
a=addSquares(2,3) // возвращает 13
b=addSquares(3,4) //
возвращает 25
c=addSquares(4,5) //
возвращает 41
Если функция содержит вложенную функцию, Вы можете вызывать внешнюю функцию и специфицировать аргументы для обеих функций, внутренней и внешней:
Function outside(x) {
Function inside(y) {
return x+y
}
return inside
}
result=outside(3)(5) //
возвращает 8
Специфицирование обработчика событий объектом Function.
Следующий код присваивает функцию обработчику события для window (весь обработчик события обязан вводиться в нижнем регистре):
window.onFocus = new Function("document.bgColor='antiquewhite'")
Если функция назначается переменной, Вы можете назначить переменную обработчику событий. Следующий код назначает функцию переменной setBGColor:
var setBGColor = new Function("document.bgColor='antiquewhite'")
Вы можете использовать эту переменную для назначения функции обработчику события одним из следующих способов:
document.form1.colorButton.onclick=setBGColor
<INPUT NAME="colorButton" TYPE="button"
VALUE="Change background color"
onClick="setBGColor()">
После того как Вы получили ссылку на объект Function, Вы можете использовать её как функцию, и она будет конвертировать объект в функцию:
window.onFocus()
Обработчики событий не принимают аргументов, поэтому Вы не можете объявлять аргументы для обработчика события в конструкторе Function. Например, Вы не можете вызвать функцию multiply путём установки свойства onclick
кнопки таким образом:
document.form1.button1.onclick=multFun(5,10)
Обратная Совместимость
JavaScript 1.1 и более ранние версии.
Вы не можете вкладывать оператор функции в другой оператор или в себя самого.
Свойства. Резюме.
Свойство
Описание
|
|
Массив аргументов, передаваемых функции.
| | |
Специфицирует тело выполняемой в данный момент функции.
| | |
Специфицирует имя функции, которая вызвала выполняемую в данный момент функцию.
|
|
Специфицирует количество аргументов, передаваемых функции.
|
|
Специфицирует количество аргументов, ожидаемых функцией.
|
|
Специфицирует функцию, которая создаёт прототип объекта.
|
|
Специфицирует количество аргументов, ожидаемых функцией.
|
|
Позволяет добавлять свойства объекту Function.
Метод. Резюме.
Метод
Описание
|
|
Позволяет применять метод одного объекта в контексте другого объекта (вызывающего объекта).
|
|
Позволяет вызывать (выполнять) метод другого объекта в контексте другого объекта (вызывающего объекта).
| | |
Возвращает строку исходного кода функции. Переопределяет метод .
| | |
Возвращает строку исходного кода функции. Переопределяет метод .
|
|
Возвращает строку исходного кода функции. Переопределяет метод .
Примеры
Пример 1.
Эта функция возвращает строку, содержащую форматированное представление чисел с заполнением ведущими нулями.
// Эта функция возвращает строку, с заполнением ведущими нулями
Function padZeros(num, totalLen) {
var numStr = num.toString() // Инициализируется return-значение
// как string
var numZeros = totalLen - numStr.length // Подсчитывается количество нулей
if (numZeros > 0) {
for (var i = 1; i <= numZeros; i++) {
numStr = "0" + numStr
}
}
return numStr
}
Следующие операторы вызывают функцию padZeros:
result=padZeros(42,4) // возвращает "0042"
result=padZeros(42,2) //
возвращает "42"
result=padZeros(5,4) //
возвращает "0005"
Пример 2.
Вы можете определить, существует ли функция, сравнивая имя функции с null. В этом примере func1
вызывается, если функция noFunc не существует; иначе вызывается func2. Заметьте, что необходимо window-имя при ссылке на функцию с именем noFunc.
if (window.noFunc == null)
func1()
else func2()
Пример 3.
Здесь создаются обработчики событий и для фрэйма. Этот код находится в том же файле, в котором содержится тэг FRAMESET. Обратите внимание, что это единственный способ создания обработчиков событий и для фрэйма, поскольку Вы не можете специфицировать обработчики событий в тэге FRAME.
frames[0].onFocus = new Function("document.bgColor='antiquewhite'")
frames[0].onBlur = new Function("document.bgColor='lightgrey'")
apply">
Операция function определяет анонимную функцию внутри выражения.
Реализована в
| JavaScript 1.5
Синтаксис
{var | const} variableName = function(parameters) {functionBody};
Описание
Следующие примеры показывают использование операции function.
Этот пример объявляет безымянную функцию внутри выражения. В переменную x устанавливается функция, возвращающая квадрат аргумента:
var x = function(y) {return y*y};
Этот пример объявляет массив a как массив из трёх функций:
var a = [function(y) {return y}, function y {return y*y}, function (y) [return y*y*y}];
Для этого массива, a[0](5) возвращает 5, a[1](5) возвращает 25, a[2](5) возвращает 125.
Объявляет функцию со специфицированными параметрами. В качестве параметров принимаются строки, числа и объекты.
Реализован в | |
JavaScript 1.0, NES 2.0 JavaScript 1.5, NES 6.0: добавлено объявление условной функции (расширение Netscape). |
|
Версия ECMA | |
ECMA-262 | |
Синтаксис
function name([param] [, param] [..., param]) {
statements
}
Вы можете также определять функции с помощью конструктора и оператора ; см. и .
Параметры
name |
Имя функции. | |
param |
Имя аргумента, передаваемого функции. Функция может иметь не более 255 аргументов. | |
statements |
Операторы, образующие тело функции. | |
Описание
Чтобы возвращать значение, функция обязана иметь оператор , который специфицирует возвращаемое значение.
Функция, созданная с помощью оператора function, является объектом Function и содержит все свойства, методы и поведение объектов Function. См. в детальную информацию о функциях.
Netscape поддерживает условное объявление функций, когда функция может быть объявлена на базе вычисления некоторого условия. Если условие true, функция объявляется. Иначе - не объявляется.
Функция может быть также объявлена внутри выражения. В этом случае функция обычно анонимна.
Примеры
Этот код объявляет функцию, которая возвращает общую сумму от продаж в долларах, если задано количество проданных единиц продуктов a, b и c.
function calc_sales(units_a, units_b, units_c) {
return units_a*79 + units_b*129 + units_c*699
}
В следующем скрипте функция one всегда объявляется. Функция zero объявляется, поскольку 'if(1)' вычисляется в true:
<SCRIPT language="JavaScript1.5">
<!--
function one()
document.writeln("This is one.");
if (1)
function zero()
{
document.writeln("This is zero.");
}
}
</SCRIPT>
Однако, если скрипт изменяется таким образом, что условие становится 'if (0)', функция zero не объявляется и не может быть вызвана.
См. также
, .
Где Найти Информацию о JavaScript
Документация о ядре JavaScript состоит из следующих книг:
содержит информацию о ядре языка JavaScript и его объектах.
(данная книга) содержит справочный материал о ядре языка JavaScript.
Если Вы новичок в JavaScript, начните с книги
После освоения фундаментальных положений Вы можете пользоваться книгой для получения более детальной информации о конкретных объектах и операторах.
DevEdge, онлайновый ресурс Netscape для разработчиков, содержит информацию, которая может быть использована Вами при работе в JavaScript. Следующие URL представляют определённый интерес:
Страница JavaScript в библиотеке DevEdge содержит документы о JavaScript. Эта страница часто изменяется. Необходимо периодически посещать её для получения свежей информации.
Библиотека DevEdge содержит документацию о многих продуктах и технологиях Netscape.
Домашняя страница DevEdge даёт доступ ко всем ресурсам DevEdge.
Mozilla.org координирует разработку Mozilla, свободно распространяемого браузера, на котором основан Netscape 6. Вы можете найти информацию о JavaScript на странице JavaScript-проекта Mozilla'ы, а также дискуссию по вопросам JavaScript в группе новостей netscape.public.mozilla.jseng.
Ядро JavaScript 1.5. Справочник
Возвращает день/число месяца в специфицированной дате в соответствии с локальным временем.
Метод из
|
|
Реализован в
|
JavaScript 1.0, NES 2.0
|
Версия ECMA
| ECMA-262
Синтаксис
getDate()
Параметры
Отсутствуют.
Описание
Значением, возвращаемым методом getDate, является целое число в диапазоне от 1 до 31.
Примеры
Второй оператор присваивает значение 25 переменной day, базируясь на значении Date-объекта Xmas95.
Xmas95 = new Date("December 25, 1995 23:15:00")
day = Xmas95.getDate()
См. также
, ,
Ядро JavaScript 1.5. Справочник
Возвращает день недели в специфицированной дате в соответствии с локальным временем.
Метод из
|
|
Реализован в
| JavaScript 1.0, NES 2.0 |
Версия ECMA
| ECMA-262
Синтаксис
getDay()
Параметры
Отсутствуют.
Описание
Значение, возвращённое методом getDay, это целое число, соответствующее дню недели: 0 -воскресенье, 1 - понедельник, 2 - вторник и т.д.
Примеры
Второй оператор присваивает weekday значение 1 на базе значения Date-объекта Xmas95.
25 декабря 1995, понедельник.
Xmas95 = new Date("December 25, 1995 23:15:00")
weekday = Xmas95.getDay()
См. также
, .
Ядро JavaScript 1.5. Справочник
Возвращает год в специфицированной дате в соответствии с локальным временем.
Метод из | |
| |
Реализован в | |
JavaScript 1.3 | |
Версия ECMA | |
ECMA-262 | |
Синтаксис
getFullYear()
Параметры
Отсутствуют.
Описание
Значение, возвращаемое методом getFullYear, это абсолютное число. Для дат в диапазоне лет от 1000 до 9999 getFullYear
возвращает число из четырёх цифр, например, 1995. Используйте эту функцию, чтобы иметь гарантию того, что год будет соответствовать формату лет после 2000 года.
Используйте этот метод вместо метода getYear.
Примеры
В этом примере значение из 4 цифр (текущий год) присваивается переменной yr.
var yr;
Today = new Date();
yr = Today.getFullYear();
См. также
, , .
Ядро JavaScript 1.5. Справочник
Возвращает час в специфицированной дате в соответствии с локальным временем.
Метод из | |
| |
Реализован в | |
JavaScript 1.0, NES 2.0 | |
Версия ECMA | |
ECMA-262 | |
Синтаксис
getHours()
Параметры
Отсутствуют.
Описание
Значение, возвращаемое методом getHours, это целое в диапазоне от 0 до 23.
Примеры
Второй оператор присваивает значение 23 переменной hours, базируясь на значении Date-объекта Xmas95.
Xmas95 = new Date("December 25, 1995 23:15:00")
hours = Xmas95.getHours()
См. также
, .