Ядро JavaScript 1.5. Справочник

         

SetUTCDate


Устанавливает число месяца для специфицированной даты в соответствии с универсальным временем.

Метод из Реализован в

JavaScript 1.3

Версия ECMAECMA-262

Синтаксис

setUTCDate(dayValue)

Параметры

dayValue

Целое от 1 до 31 - число месяца.

Описание

Если специфицированный Вами параметр находится за пределами ожидаемого диапазона, setUTCDate пытается соответственно обновить информацию даты в Date-объекте. Например, если Вы используете 40 для dayValue и month, хранимый в объекте Date

- это June, число будет изменено на 10 и месяц будет увеличен до July.

Примеры
theBigDay = new Date();

theBigDay.setUTCDate(20);


См. также

, .



SetUTCFullYear




Устанавливает полный год в специфицированной дате в соответствии с универсальным временем.

Метод из Реализован в

JavaScript 1.3

Версия ECMAECMA-262

Синтаксис

setUTCFullYear(yearValue[, monthValue, dayValue])

Параметры

yearValue

Целое число - год, например, 1995.

monthValue

Целое от 0 до 11 - месяцы с января по декабрь.

dayValue

Целое от 1 до 31 - число месяца. Если Вы специфицируете параметр dayValue, Вы обязаны также специфицировать monthValue.

Описание

Если Вы не специфицируете параметры monthValue и dayValue, используются значения из методов getMonth и getDate.

Если специфицированный Вами параметр находится за пределами ожидаемого диапазона, setUTCFullYear пытается соответственно обновить информацию даты и другие параметры в Date -объекте. Например, если Вы специфицируете 15 для monthValue, year увеличивается на 1 (year + 1), а 3 используется для month.

Примеры
theBigDay = new Date();

theBigDay.setUTCFullYear(1997);


См. также

, .



SetUTCHours


Устанавливает час в специфицированной дате в соответствии с универсальным временем.

Метод из

Реализован в

JavaScript 1.3

Версия ECMA

ECMA-262

Синтаксис

setUTCHour(hoursValue[, minutesValue, secondsValue, msValue])

Параметры

hoursValue

Целое от 0 до 23 - час.

minutesValue

Целое от 0 до 59 - минуты.secondsValue

Целое от 0 до 59 - секунды. Если Вы специфицируете параметр secondsValue, Вы обязаны также специфицировать minutesValue.

msValueЧисло в диапазоне от 0 до 999 - миллисекунды. Если Вы специфицируете параметр msValue, Вы обязаны также специфицировать minutesValue и secondsValue.


Описание

Если Вы не специфицируете параметры minutesValue, secondsValue и msValue, используются значения из методов getUTCMinutes, getUTCSeconds и getUTCMilliseconds.

Если специфицированный Вами параметр находится за пределами ожидаемого диапазона, setUTCHours пытается соответственно обновить информацию даты в Date-объекте. Например, если Вы специфицируете 100 для secondsValue, минуты увеличатся на 1 (min + 1), а 40 будет использовано для секунд.


Примеры

theBigDay = new Date();
theBigDay.setUTCHour(8);

См. также

, .



SetUTCMilliseconds


Устанавливает миллисекунды в специфицированной дате в соответствии с универсальным временем.

Метод из

Реализован в

JavaScript 1.3

Версия ECMA

ECMA-262


Синтаксис

setUTCMilliseconds(millisecondsValue)

Параметры

millisecondsValue

Число от 0 до 999 -миллисекунды.

Описание

Если специфицированный Вами параметр находится за пределами ожидаемого диапазона, setUTCMilliseconds пытается соответственно обновить информацию даты в Date-объекте. Например, если Вы специфицируете 1100 для millisecondsValue, секунды, хранимые в объекте Date, будут увеличены на 1, а 100 будет использовано для миллисекунд.

Примеры
theBigDay = new Date();

theBigDay.setUTCMilliseconds(500);


См. также

, .



SetUTCMinutes


Устанавливает минуты в специфицированной дате в соответствии с универсальным временем.

Метод из

Реализован в

JavaScript 1.3

Версия ECMA

ECMA-262


Синтаксис

setUTCMinutes(minutesValue[, secondsValue, msValue])

Параметры

minutesValue

Целое от 0 до 59 - минуты.

secondsValue

Целое от 0 до 59 - секунды. Если Вы специфицируете параметр secondsValue, Вы обязаны также специфицировать minutesValue.

msValue

Число в диапазоне от 0 до 999 - миллисекунды. Если Вы специфицируете параметр msValue, Вы обязаны также специфицировать minutesValue и secondsValue.


Описание

Если Вы не специфицируете параметры secondsValue и msValue, используются значения из методов getUTCSeconds и getUTCMilliseconds.

Если специфицированный Вами параметр находится за пределами ожидаемого диапазона, setUTCMinutes

пытается соответственно обновить информацию даты в Date-объекте. Например, если Вы специфицируете 100 для secondsValue, минуты (minutesValue) будут увеличены на 1 (minutesValue + 1), а 40 будет использовано для секунд.

Примеры
theBigDay = new Date();

theBigDay.setUTCMinutes(43);


См. также

, .



SetUTCMonth


Устанавливает месяц в специфицированной дате в соответствии с универсальным временем.

Метод из

Реализован в

JavaScript 1.3

Версия ECMA

ECMA-262

Синтаксис

setUTCMonth(monthValue[, dayValue])

Параметры

monthValue

Целое от 0 до 11 - месяцы с января по декабрь.

dayValueЦелое от 1 до 31 - число месяца.


Описание

Если Вы не специфицируете параметр dayValue, используется значение из метода getUTCDate.

Если специфицированный Вами параметр находится за пределами ожидаемого диапазона, setUTCMonth

пытается соответственно обновить информацию даты в Date-объекте. Например, если Вы специфицируете 15 для monthValue, year будет увеличен на 1 (year + 1), а 3 будет использовано для month.


Примеры
theBigDay = new Date();

theBigDay.setUTCMonth(11);

См. также

, .



SetUTCSeconds


Устанавливает секунды в специфицированной дате в соответствии с универсальным временем.

Метод из

Реализован в

JavaScript 1.3

Версия ECMA

ECMA-262

Синтаксис

setUTCSeconds(secondsValue[, msValue])

Параметры

secondsValue

Целое от 0 до 59.

msValue

Число от 0 до 999 - миллисекунды.

Описание

Если Вы не специфицируете параметр msValue, используется значение, возвращаемое методом getUTCMilliseconds.

Если специфицированный Вами параметр находится за пределами ожидаемого диапазона, setUTCSeconds

пытается соответственно обновить информацию даты в Date-объекте. Например, если Вы специфицирует 100 для secondsValue, минуты, хранимые в объекте Date, увеличиваются на 1, а 40 будет использовано для секунд.

Примеры
theBigDay = new Date();

theBigDay.setUTCSeconds(20);

См. также

, .



SetYear


Устанавливает год в специфицированной дате в соответствии с локальным временем.

Метод из Реализован в

JavaScript 1.0, NES 2.0

Deprecated in JavaScript 1.3

Версия ECMA

ECMA-262


Синтаксис

setYear(yearValue)

Параметры

yearValue

Целое число.

Описание

setYear более не используется и заменён на метод .

Если yearValue это число в диапазоне от 0 до 99 (включительно), то year для dateObjectName

устанавливается в 1900 + yearValue. Иначе year для dateObjectName устанавливается в yearValue.

Чтобы учесть годы до и после 2000, Вы должны использовать вместо setYear, тогда год будет специфицирован полностью.

Примеры

Заметьте, что есть два способа установить год в 20 столетии.

Пример 1.

Год устанавливается в1996.

theBigDay.setYear(96)

Пример 2.

Год устанавливается в 1996.

theBigDay.setYear(1996)

 

Пример 3.

Год устанавливается в 2000.

theBigDay.setYear(2000)

См. также

, , .



Shift


Удаляет первый элемент массива и возвращает этот элемент. Этот метод изменяет размер массива.

Метод из Реализован в

JavaScript 1.2, NES 3.0Версия ECMA

ECMA-262 Edition 3


Синтаксис

shift()


Параметры

Отсутствуют.


Пример

Следующий код отображает массив myFish до и после удаления первого элемента. Он также отображает удалённый элемент:

myFish = ["angel", "clown", "mandarin", "surgeon"];

document.writeln("myFish before: " + myFish);

shifted = myFish.shift();

document.writeln("myFish after: " + myFish);

document.writeln("Удалён этот элемент: " + shifted);

На выходе будет:

myFish before: ["angel", "clown", "mandarin", "surgeon"]

myFish after: ["clown", "mandarin", "surgeon"]

Удалён этот элемент: angel

См. также

, ,



Символы


- (побитовое НЕ), операция;

- (унарное отрицание), операция;

-- (декремент), операция;

! (логическое НЕ), операция;

!= (не равно), операция;,

!== (строго не равно), операция,

% (остаток от деления), операция;

%= операция;

&& (логическое И), операция;

& (побитовое И), операция;

&= операция;

) ;

*/ комментарий;

*= операция;

+ (конкатенация строк), операция;

++ (инкремент), операция;

+= (конкатенация строк), операция;

+= операция;

/* комментарий;

// комментарий;

/= операция;

< (меньше), операция;

<< (сдвиг влево), операция;,

<<= операция;

<= (меньше или равно), операция;

== (равно), операция;,

=== (строго равно), операция;,

-= операция;

> (больше), операция;

>= (больше или равно), операция;

>> (сдвиг вправо с сохранением знака), операция;,

>>= операция;

>>> (сдвиг вправо с заполнением нулями), операция;,

>>>= операция;

?: (проверка условия), операция

^ (побитовое исключающее ИЛИ), операция;

^= операция;

| (побитовое И), операция;

|= операция;

(логическое ИЛИ), операция;

, (запятая), операция



Sin


Возвращает синус числа.

Метод из Static

Реализован вJavaScript 1.0, NES 2.0

Версия ECMAECMA-262

Синтаксис
sin(x)

Параметр

x

Число.

Описание

Метод sin возвращает число в диапазоне от -1 до 1, представляющее синус аргумента.

Поскольку sin это static-метод из Math, Вы всегда используете его так: Math.sin(), а не как метод Math-объекта, созданного Вами.


Примеры

Эта функция возвращает синус переменной x:

function getSine(x) {

   return Math.sin(x)

}

Если Вы передаёте в getSine

значение Math.PI/2, он возвратит 1.


См. также

, , , , , .



Slice


Извлекает раздел массива и возвращает новый массив.

Метод из Реализован в

JavaScript 1.2, NES 3.0Версия ECMA

ECMA-262 Edition 3


Синтаксис

slice(begin[,end])


Параметры

begin

Индекс с базой 0, с которого начинается извлечение.end

Индекс с базой 0, на котором заканчивается извлечение:

slice извлекает до end (не включительно).

slice(1,4) извлекает элементы со второго по третий включительно (элементы, индексированные 1, 2 и 3).

Если индекс отрицательный, end указывает смещение от конца последовательности. slice(2,-1)

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

Если end опущен, slice извлекает до конца последовательности.


Описание

slice не изменяет оригинальный массив, но возвращает новую копию "на один уровень глубже", которая содержит копии элементов извлечённых из оригинального массива. Элементы оригинального массива копируются в новый массив так:

Для ссылок на объект (а не реального объекта), slice

копирует ссылки на объекты в новый массив. И оригинальный, и новый массивы ссылаются на один объект. Если объект, на который ссылаются, изменяется, изменения отражаются в обоих массивах, новом и оригинальном.

Для строк и чисел (не для объектов и ), slice

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

Если новый элемент добавляется к любому массиву, другой массив не изменяется.


Примеры

В следующем примере slice создаёт новый массив newCar

из myCar. Оба содержат ссылку на объект myHonda. Если цвет myHonda изменяется на purple, оба массива отражают изменение.

<SCRIPT LANGUAGE="JavaScript1.2">

//Используя slice, создать newCar из myCar.

myHonda = {color:"red",wheels:4,engine:{cylinders:4,size:2.2}}

myCar = [myHonda, 2, "cherry condition", "purchased 1997"]

newCar = myCar.slice(0,2)

//Записать значения из myCar, newCar и цвет myHonda,

// на который имеются ссылки в обоих массивах.

document.write("myCar = " + myCar + "<BR>")

document.write("newCar = " + newCar + "<BR>")

document.write("myCar[0].color = " + myCar[0].color + "<BR>")

document.write("newCar[0].color = " + newCar[0].color + "<BR><BR>")

//Изменить цвет  myHonda.

myHonda.color = "purple"

document.write("The new color of my Honda is " + myHonda.color + "<BR><BR>")

//Записать цвет myHonda, на который ссылаются оба массива.

document.write("myCar[0].color = " + myCar[0].color + "<BR>")

document.write("newCar[0].color = " + newCar[0].color + "<BR>")

</SCRIPT>

Скрипт записывает:

myCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2,

   "cherry condition", "purchased 1997"]

newCar = [{color:"red", wheels:4, engine:{cylinders:4, size:2.2}}, 2]

myCar[0].color = red newCar[0].color = red

The new color of my Honda is purple

myCar[0].color = purple

newCar[0].color = purple


Извлекает раздел строки и возвращает новую строку.

Метод из

Реализован вJavaScript 1.0, NES 2.0

Версия ECMA

ECMA-262 Edition 3


Синтаксис

slice(beginslice[, endslice])

Параметры

beginslice

Индекс с базой 0, по которому начинается извлечение.

endslice

Индекс с базой 0, по которому заканчивается извлечение. При отсутствии, slice извлекает до конца строки.


Описание

slice извлекает текст из одной строки и возвращает новую строку. Изменения в тексте одной строки не влияют на другие строки.

slice извлекает до, но не включая, endslice. String.slice(1,4) извлекает символы со второго по четвёртый (символы, индексированные 1, 2 и 3).

Как отрицательный индекс, endslice показывает смещение от конца строки . String.slice(2,-1) извлекает символы с третьего через второй и последний.


Пример

В этом примере slice используется для создания новой строки.

<SCRIPT>

str1="The morning is upon us. "

str2=str1.slice(3,-5)

document.write(str2)

</SCRIPT>

Будет записано:

morning is upon



Small


Выводи строку шрифтом уменьшенного размера, как при использовании тэга <SMALL>.

Метод из

Реализован вJavaScript 1.0, NES 2.0


Синтаксис

small()

Параметры

Отсутствуют.


Описание

Используйте метод small с методами 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>

См. также

,

.

split">



Соглашения по Документам


Приложения JavaScript могут работать на различных операционных системах (ОС); информация в этой книге применима ко всем версиям. Пути файлов и директорий даны в формате Windows (с \ для разделения имён директорий). Для Unix-версий пути директорий - те же, только используются / вместо \.

В этой книге используются uniform resource locators (URL)/универсальные локаторы ресурсов в следующей форме:

http://сервер.домен/путь/файл.html

В этих URL сервер это имя сервера, на котором Вы запускаете своё приложение, такое как research1 или www;

домен это имя Вашего Internet-домена, такое как netscape.com или uiuc.edu;

путь это структура директории на сервере;

файл.html это имя конкретного файла.

В целом элементы в URL, введённые шрифтом italic, это шаблоны, а элементы в нормальном моноширинном шрифте - литералы. Если на Вашем сервере имеется Secure Sockets Layer (SSL), Вы можете использовать https вместо http в URL.

В этой книге используются следующие соглашения по шрифтам:

Моноширинный шрифт используется в коде примеров и листинге кода, в API и элементах языка (таких как имена методов и свойств), названиях файлов, пути, названиях директорий, тэгах HTML и в любом тексте, который должны выводиться на экран.

(Моноширинный italic-шрифт используется для замещаемых болванок-шаблонов, вставленных в код.)

Шрифт Italic используется для названий книг, выделения, переменных и заглушек-шаблонов и слов, используемых в литеральном смысле.

(Полу)Жирный шрифт используется для справочных терминов.

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.



Sort


Сортирует элементы массива.

Метод из

Реализован вJavaScript 1.1, NES 2.0

JavaScript 1.2: модифицировано поведение.

Версия ECMAECMA-262


Синтаксис

sort(compareFunction)


Параметры

compareFunction

Специфицирует функцию, которая определяет порядок сортировки. Если опущен, массив сортируется лексикографически (в словарном порядке) в соответствии с конверсией в строку каждого элемента.


Описание

Если compareFunction

не предоставляется, элементы сортируются путём конвертирования их в строки и сравнения строк в лексикографическом порядке ("словарь" или "телефонная книга," не числовой порядок). Например, "80" встанет перед "9" в лексикографическом порядке, но при числовой сортировке 9 встанет перед 80.

Если compareFunction

предоставляется, массив элементов сортируется в соответствии с return-значением функции сравнения. Если a и b это два сравниваемых элемента, тогда:

Если compareFunction(a, b) меньше 0, сортирует от b к a меньший индекс, чем a.

Если compareFunction(a, b) возвращает 0, оставляет a и b без изменений друг относительно друга, но сортирует с учётом всех отличающихся элементов.

Если compareFunction(a, b) больше 0, сортирует от b к a больший индекс, чем a.

Итак, функция compare имеет следующую форму:

function compare(a, b) {

   if (a меньше, чем b, по некоторому критерию сортировки)

      return -1

   if (a больше, чем b, по некоторому критерию сортировки)

      return 1

   // a обязано быть равно b

   return 0

}

Чтобы сравнить числа вместо строк, функция compare может просто вычесть b из a:

function compareNumbers(a, b) {

   return a - b

}

JavaScript использует стабильную сортировку: индекс взаимного расположения a и b не изменяется, если a и b равны. Если индекс a меньше, чем индекс b перед началом сортировки, он останется таким и после сортировки, независимо от того, как переместятся a и b после сортировки.

Поведение метода sort

отличается в JavaScript 1.1 и в JavaScript 1.2.

В JavaScript 1.1, на некоторых платформах, метод sort не работает. Этот метод работает на всех платформах в JavaScript 1.2.

В JavaScript 1.2, этот метод больше не конвертирует undefined-элементы в null; вместо этого он сортирует их до самого конца массива. Например, предположим, имеется скрипт:

<SCRIPT>

a = new Array();

a[0] = "Ant";

a[5] = "Zebra";

function writeArray(x) {

   for (i = 0; i < x.length; i++) {

      document.write(x[i]);

      if (i < x.length-1) document.write(", ");

   }

}

writeArray(a);

a.sort();

document.write("<BR><BR>");

writeArray(a);

</SCRIPT>

В JavaScript 1.1 печатается:

ant, null, null, null, null, zebra

ant, null, null, null, null, zebra

В JavaScript 1.2 печатается:

ant, undefined, undefined, undefined, undefined, zebra

ant, zebra, undefined, undefined, undefined, undefined


Примеры

В следующем примере создаются 4 массива и выводится оригинальный массив, затем - отсортированные массивы. Числовые массивы сортируются сначала без, а затем - с использованием функции compare.

<SCRIPT>

stringArray = new Array("Blue","Humpback","Beluga")

numericStringArray = new Array("80","9","700")

numberArray = new Array(40,1,5,200)

mixedNumericArray = new Array("80","9","700",40,1,5,200)

function compareNumbers(a, b) {

   return a - b

}

document.write("<B>stringArray:</B> " + stringArray.join() +"<BR>")

document.write("<B>Sorted:</B> " + stringArray.sort() +"<P>")

document.write("<B>numberArray:</B> " + numberArray.join() +"<BR>")

document.write("<B>Sorted without a compare function:</B> " + numberArray.sort() +"<BR>")

document.write("<B>Sorted with compareNumbers:</B> " + numberArray.sort(compareNumbers) +"<P>")

document.write("<B>numericStringArray:</B> " + numericStringArray.join() +"<BR>")

document.write("<B>Sorted without a compare function:</B> " + numericStringArray.sort() +"<BR>")

document.write("<B>Sorted with compareNumbers:</B> " + numericStringArray.sort(compareNumbers) +"<P>")

document.write("<B>mixedNumericArray:</B> " + mixedNumericArray.join() +"<BR>")

document.write("<B>Sorted without a compare function:</B> " + mixedNumericArray.sort() +"<BR>")

document.write("<B>Sorted with compareNumbers:</B> " + mixedNumericArray.sort(compareNumbers) +"<BR>")

</SCRIPT>

Как показано на выводе, если используется функция compare, числа сортируются корректно вне зависимости от того, являются они числами или строками чисел:

stringArray: Blue,Humpback,Beluga

Sorted: Beluga,Blue,Humpback

numberArray: 40,1,5,200

Sorted without a compare function: 1,200,40,5

Sorted with compareNumbers: 1,5,40,200

numericStringArray: 80,9,700

Sorted without a compare function: 700,80,9

Sorted with compareNumbers: 9,80,700

mixedNumericArray: 80,9,700,40,1,5,200

Sorted without a compare function: 1,200,40,5,700,80,9

Sorted with compareNumbers: 1,5,9,40,80,200,700

См. также

,



Source


Свойство только-для-чтения, содержащее текст патэрна, исключая символы /.

Свойство изЭкземпляры .

Read-only

Реализовано вJavaScript 1.2, NES 3.0

Версия ECMAECMA 262, Edition 3

Описание

source это свойство отдельного объекта регулярного выражения.

Вы не можете изменить это свойство явно.



Splice


Изменяет содержимое массива, добавляя новые элементы и удаляя старые.

Метод из Реализован в

JavaScript 1.2, NES 3.0

JavaScript 1.3: возвращает массив, содержащий удалённые элементы.

Версия ECMAECMA-262 Edition 3


Синтаксис

splice(index, howMany, [element1][, ..., elementN])


Параметры

index

Индекс, с которого начинается изменение массива.

howMany

Целое число, обозначающее количество удаляемых старых элементов массива. Если howMany

равно 0, никакие элементы не удаляются. В этом случае Вы должны специфицировать как минимум один новый элемент.

element1, ...,

elementN

Элементы, добавляемые к массиву. Если Вы не специфицировали никаких новых элементов, splice

только удаляет элементы из массива.


Описание

Если Вы специфицируете разное количество элементов для вставки и для удаления, массив в конце вызова будет иметь другой размер.

Метод splice возвращает массив, содержащий удалённые элементы. Если удалён только один элемент, возвращается массив из одного элемента.


Обратная Совместимость


JavaScript 1.2.

Метод splice возвращает удалённый элемент, если удаляется только один элемент (параметр howMany равен 1); иначе метод возвращает массив, содержащий удалённые элементы.


Примеры

Следующий скрипт иллюстрирует использование splice:

<SCRIPT LANGUAGE="JavaScript1.2">

myFish = ["angel", "clown", "mandarin", "surgeon"];

document.writeln("myFish: " + myFish + "<BR>");

removed = myFish.splice(2, 0, "drum");

document.writeln("После добавления 1: " + myFish);

document.writeln("удалён: " + removed + "<BR>");

removed = myFish.splice(3, 1)

document.writeln("После удаления 1: " + myFish);

document.writeln("удалён: " + removed + "<BR>");

removed = myFish.splice(2, 1, "trumpet")

document.writeln("После замещения 1: " + myFish);

document.writeln("удалён: " + removed + "<BR>");

removed = myFish.splice(0, 2, "parrot", "anemone", "blue")

document.writeln("После замещения 2: " + myFish);

document.writeln("удалён: " + removed);

</SCRIPT>

Этот скрипт выводит:

myFish: ["angel", "clown", "mandarin", "surgeon"]

После добавления 1: ["angel", "clown", "drum", "mandarin", "surgeon"]

удалён: undefined

После удаления 1: ["angel", "clown", "drum", "surgeon"]

удалён: mandarin

После замещения 1: ["angel", "clown", "trumpet", "surgeon"]

удалён: drum

После замещения 2: ["parrot", "anemone", "blue", "trumpet", "surgeon"]

удалён: ["angel", "clown"]



Split


Делит String-объект на массив строк, разделяя строку на подстроки.

Метод из

Реализован вJavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262 (если в качестве сепаратора строка)
ECMA-262 Edition 3 (если в качестве сепаратора регулярное выражение)


Синтаксис

split([separator][, limit])

Параметры

separator

Специфицирует символ, используемый при разделении строки в качестве сепаратора. Он обрабатывается как строка или как регулярное выражение. Если сепаратор отсутствует, возвращаемый массив содержит один элемент - всю строку целиком.

limit

Целое число, специфицирующее ограничение количества находимых разделений.

Описание

Метод split возвращает новый массив.

Если найден, сепаратор удаляется из строки и подстрок, возвращаемых в массиве. Если сепаратор опущен, массив содержит один элемент - всю строку.

В JavaScript 1.2 и позже, split имеет следующие дополнения:

Он может принимать регулярное выражение в качестве аргумента, а также фиксированную строку, по которым разделяется строка-объект. Если сепаратор - регулярное выражение, любые имеющиеся скобки вызывают включение подсовпадений в возвращаемый массив.

Может принимать ограниченное количество элементов, так что результирующий массив не будет содержать пустые ведомые элементы.

Если Вы специфицируете LANGUAGE="JavaScript1.2" в тэге SCRIPT, String.split(" ")

делит строку при каждом прогоне одним или более пробельными символами, включая пробелы, табуляцию, прогоны строки и возвраты каретки. Для этого LANGUAGE="JavaScript1.2" обязано быть специфицировано в тэге <SCRIPT>.


Примеры


Пример 1.

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

function splitString (StringTosplit,separator) {

 arrayOfStrings = StringTosplit.split(separator)

 document.write ('<P>The original String is: "' + StringTosplit + '"')

 document.write ('<BR>The separator is: "' + separator + '"')

 document.write ("<BR>The array has " + arrayOfStrings.length + " elements: ")

 for (var i=0; i < arrayOfStrings.length; i++) {

    document.write (arrayOfStrings[i] + " / ")
 }

}

var tempestString="Oh brave new world that has such people in it."

var monthString="Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"

var space=" "

var comma=","

splitString(tempestString,space)

splitString(tempestString)

splitString(monthString,comma)

Это пример производит следующий вывод:

The original String is: "Oh brave new world that has such people in it."

The separator is: " "

The array has 10 elements: Oh / brave / new / world / that / has / such / people / in / it. /

The original String is: "Oh brave new world that has such people in it."

The separator is: "undefined"

The array has 1 elements: Oh brave new world that has such people in it. /

The original String is: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec"

The separator is: ","

The array has 12 elements: Jan / Feb / Mar / Apr / May / Jun / Jul / Aug / Sep / Oct / Nov / Dec /

Пример 2.

Рассмотри следующий скрипт:

<SCRIPT LANGUAGE="JavaScript1.2">

str="She sells seashells \nby the\n seashore"

document.write(str + "<BR>")

a=str.split(" ")

document.write(a)

</SCRIPT>

При использовании LANGUAGE="JavaScript1.2" это скрипт даст:

"She", "sells", "seashells", "by", "the", "seashore"

Без LANGUAGE="JavaScript1.2" этот скрипт разделит только по отдельным пробельным символам, что даст:

"She", "sells", , , , "seashells", "by", , , "the", "seashore"

Пример 3.

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

nameList это массив, возвращаемый как результат работы split.

<SCRIPT>

names = "Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand ";

document.write (names + "<BR>" + "<BR>");

re = /\s*;\s*/;

nameList = names.split (re);

document.write(nameList);

</SCRIPT>

В результате печатаются две строки; первая - строка-оригинал, вторая - результирующий массив.

Harry Trump ;Fred Barney; Helen Rigby ; Bill Abel ;Chris Hand
Harry Trump,Fred Barney,Helen Rigby,Bill Abel,Chris Hand

Пример 4.

В этом примере split ищет в строке 0 или более пробелов и возвращает первые три найденные разделения.

<SCRIPT LANGUAGE="JavaScript1.2">

myVar = " Hello World. How are you doing? ";

splits = myVar.split(" ", 3);

document.write(splits)

</SCRIPT>

Скрипт отображает:

["Hello", "World.", "How"]

См. также

, , .



Sqrt


Возвращает квадратный корень числа.

Метод из

StaticРеализован в

JavaScript 1.0, NES 2.0Версия ECMA

ECMA-262

Синтаксис
sqrt(x)

Параметр

x

Число.


Описание

Если number это отрицательное значение, sqrt возвращает NaN.

Поскольку sqrt это static-метод из Math, Вы всегда используете его так: Math.sqrt(), а не как метод Math-объекта, созданного Вами.


Примеры

Эта функция возвращает квадратный корень переменной x:

function getRoot(x) {

   return Math.sqrt(x)

}

Если Вы передаёте в getRoot

значение 9, он возвращает 3; если передаёте 2, возвращает 1.414213562373095.


Квадратный корень из 1/2, приблизительно 0.707.
Свойство из Static, Read-only Реализовано вJavaScript 1.0, NES 2.0

Версия ECMAECMA-262

Пример


Эта функция возвращает 1, делённая на квадратный корень из 2:

function getRoot1_2() {

   return Math.SQRT1_2

}

Описание


Поскольку SQRT1_2 это static-свойство из Math, Вы всегда используете его так: Math.SQRT1_2, а не как свойство Math-объекта, созданного Вами.


Strike


Выводи строку перечёркнутым шрифтом, как при использовании тэга <STRIKE>.

Метод из

Реализован вJavaScript 1.0, NES 2.0

Синтаксис

strike()

Параметры

Отсутствуют.

Описание

Используйте метод strike с методами 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>


См. также

, , .



String


Объект, представляющий серию символов в строке.

 

Объект ядра

Реализован в

JavaScript 1.0: создание объекта String только символами в кавычках.

JavaScript 1.1, NES 2.0: добавлен конструктор String; добавлено свойство

prototype; добавлен метод ; добавлена возможность передавать строки между скриптами в различные окна и фрэймы (в предыдущих релизах Вы должны были добавлять пустую строку к строке другого окна, чтобы ссылаться на неё).

JavaScript 1.2, NES 3.0: добавлены методы , , , , и .

JavaScript 1.3: добавлен метод ; изменены методы , и .

Версия ECMA

ECMA-262


Создание

Конструктор String:

new String(String)

Параметры

String

Любая строка.


Описание

Объект String это оболочка вокруг данных примитивного типа String. Не путайте string-литерал с объектом String. Например, следующий код создаёт string-литерал s1 и String-объект s2:

s1 = "foo" // создаёт значение строкового литерала

s2 = new String("foo") // создаёт String-объект

Вы можете вызывать любой из методов String-объекта в строковом литеральном значении — JavaScript автоматически конвертирует строковой литерал во временный String-объект, вызывает метод, затем уничтожает временный String-объект. Вы можете также использовать свойство String.length

со string-литералом.

Вы должны использовать string-литералы, если только Вам не нужно использовать именно String-объект, так как String-объекты могут иметь поведение, не предсказуемое интуитивно. Например:

s1 = "2 + 2" // создаёт значение строкового литерала

s2 = new String("2 + 2") // создаёт String-объект

eval(s1)     // возвращает число 4

eval(s2)     // возвращает строку "2 + 2"

Строка может быть представлена как литерал, заключённый в одинарные или двойные кавычки; например, "Netscape" или `Netscape'.

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


Свойства. Резюме.

Свойство

Описание

Специфицирует функцию, создающую прототип объекта.

Размер строки.

Позволяет добавлять свойства String-объекту.

 

Методы. Резюме.

Метод

Описание

Создаёт "якорь" HTML, который используется в качестве цели гипертекстовой ссылки.

Отображает строку шрифтом большего размера, как при использовании тэга BIG.

Строка мигает, как при использовании тэга BLINK.

Строка выводится жирным шрифтом,  как при использовании тэга B.

Возвращает символ, находящийся в строке по специфицированному индексу.

Возвращает число, обозначающее Unicode-значение символа по данному индексу.

Объединяет текст двух строк и возвращает новую строку.

Строка выводится моноширинным шрифтом, как при использовании тэга TT.

Строка выводится в специфицированном цвете, как при использовании тэга <FONT COLOR=color>.

Строка выводится шрифтом специфицированного размера, как при использовании тэга <FONT SIZE=size>.

Возвращает строку, созданную путём использования специфицированной последовательности Unicode-значений. Это метод класса String, а не String-экземпляра.

Возвращает индекс, внутри вызывающего String-объекта, первого появления специфицированного значения, или -1 если оно не найдено.

Строка выводится шрифтом italic, как при использовании тэга <I>.

Возвращает индекс, внутри вызывающего String-объекта, последнего появления специфицированного значения, или -1 если оно не найдено.

Создаёт гипертекстовую ссылку  HTML.

Используется для поиска совпадений регулярного выражения относительно строки.

Используется для поиска совпадений регулярного выражения относительно строки и для замены совпавшей подстроки новой подстрокой.

Выполняет поиск совпадений регулярного выражения относительно специфицированной строки.

Извлекает раздел строки и возвращает новую строку.

Строка выводится шрифтом уменьшенного размера, как при использовании тэга SMALL.

Разделяет String-объект на массив строк путём разделения строки на подстроки.

Строка выводится как перечёркнутый текст, как при использовании тэга STRIKE.

Строка выводится как подиндекс, как при использовании тэга SUB.

Возвращает специфицированное количество символов строки, начиная со специфицированного места.

Возвращает символы строки, находящиеся между специфицированными индексами.

Строка выводится как надиндекс, как при использовании тэга SUP.

Возвращает вызывающее строковое значение, с символами, конвертированными в нижний регистр.

Возвращает литерал объекта, представляющий специфицированный объект; Вы можете использовать это значение для создания нового объекта. Переопределяет метод .

Возвращает строку, представляющую специфицированный объект. Переопределяет метод .

Возвращает вызывающее строковое значение, с символами, конвертированными в верхний регистр.

Возвращает примитивное значение специфицированного объекта. Переопределяет метод .

Кроме того, этот метод наследует методы и из .

Примеры
Пример 1: Строковой литерал.

Следующий оператор создаёт string-литерал:

var last_name = "Schaefer"

 

Пример 2: Свойства строкового литерала.

Следующие операторы вычисляются до 8, "SCHAEFER" и "schaefer":

last_name.length

last_name.toUpperCase()

last_name.toLowerCase()

Пример 3: Доступ к отдельным символам строки.

Можно представить строку как массив символов. Тогда можно получить доступ к отдельным символам строки по индексу этого массива. Например, следующий код выводит "The first character in the String is H":

var myString = "Hello"

myString[0] // returns "H"

Пример 4: Передача строки между скриптами, находящимися в разных окнах или фрэймах.

Следующий код создаёт две строковые переменные и открывает второе окно:

var lastName = "Schaefer"

var firstName = "Jesse"

empWindow=window.open('String2.html','window1','width=300,height=300')

Если HTML-источник для второго окна (String2.html) создаёт две строковые переменные, empLastName и empFirstName, то следующий код в первом окне присваивает значения переменным второго окна:

empWindow.empFirstName=firstName

empWindow.empLastName=lastName

Следующий код первого окна выводит значения переменных второго окна:

alert('empFirstName in empWindow is ' + empWindow.empFirstName)

alert('empLastName in empWindow is ' + empWindow.empLastName)



Строковые Операции (операции работы со строками)


Помимо операций сравнения, которые можно использовать со сроками, операция (+) выполняет конкатенацию (объединение) двух строковых значений, возвращая строку, являющуюся результатом объединения двух строк-операндов. Например, "my " + "string" возвратит строку "my string".

Реализована вJavaScript 1.0 Версия ECMAECMA-262

Сокращённая операция присвоения += также может использоваться для конкатенации строк. Например, если переменная mystring имеет значение "alpha," то выражение mystring += "bet"

вычисляется в "alphabet", и это значение присваивается переменной mystring.



Sub


Выводит строку как подиндекс, как при использовании тэга <SUB>.

Метод из

Реализован в

JavaScript 1.0, NES 2.0

Синтаксис

sub()

Параметры

Отсутствуют.

Описание

Используйте метод sub с методами write или writeln для форматирования и отображения строки в документе. В серверном JavaScript используйте для генерации HTML функцию write.

Примеры

Здесь методы sub и sup используются при форматировании строки:

var superText="superscript"

var subText="subscript"

document.write("This is what a " + superText.sup() + " looks like.")

document.write("<P>This is what a " + subText.sub() + " looks like.")

Вывод будет таким же, как и в нижеследующем HTML:

This is what a <SUP>superscript</SUP> looks like.

<P>This is what a <SUB>subscript</SUB> looks like.

См. также

.



Substr


Возвращает специфицированное количество символов строки, начиная со специфицированного места.

Метод из

Реализован вJavaScript 1.0, NES 2.0


Синтаксис

substr(start[, length])

Параметры

start

Точка, с которой начинается извлечение символов.

length

Количество извлекаемых символов.


Описание

start это индекс символа. Индекс первого символа 0, а индекс последнего символа - на 1 меньше длины строки.

substr начинает извлечение символов от start и выбирает length-количество символов.

Если start имеет положительное значение и размер, равный строке или больший, substr не возвращает никаких символов.

Если start имеет отрицательное значение, substr

использует его как индекс символа, считая от конца строки. Если start имеет отрицательное значение и abs(start) больше длины строки, substr

использует 0 как start-индекс.

Если length равен 0 или отрицательный, substr не возвращает никаких символов. Если length опущен, start извлекает символы до конца строки.

Пример

Рассмотрим следующий скрипт:

<SCRIPT LANGUAGE="JavaScript1.2">

str = "abcdefghij"

document.writeln("(1,2): ", str.substr(1,2))

document.writeln("(-2,2): ", str.substr(-2,2))

document.writeln("(1): ", str.substr(1))

document.writeln("(-20, 2): ", str.substr(1,20))

document.writeln("(20, 2): ", str.substr(20,2))

</SCRIPT>

Этот скрипт отобразит:

(1,2): bc

(-2,2): ij

(1): bcdefghij

(-20, 2): bcdefghij

(20, 2):

См. также

.



SubString


Возвращает поднабор String-объекта.

Метод из

Реализован в

JavaScript 1.0, NES 2.0

Версия ECMAECMA-262


Синтаксис

subString(indexA, indexB)

Параметры

indexA

Целое, начиная от 0, на 1 меньшее, чем length строки.

indexB

Целое, начиная от 0, на 1 меньшее, чем length строки.


Описание

subString извлекает символы с indexA до, но не включая, indexB.

В частности:

Если indexA меньше 0, indexA рассматривается как имеющий значение 0.

Если indexB больше, чем StringName.length, indexB рассматривается так, как если бы он был StringName.length.

Если indexA равен indexB, subString возвращает пустую строку.

Если indexB опущен, indexA извлекает символы до конца строки.

В JavaScript 1.2 используется LANGUAGE="JavaScript1.2" в тэге SCRIPT:

Если indexA больше, чем indexB, JavaScript производит ошибку времени выполнения (out of memory/недостаточно памяти).

В JavaScript 1.2 - без LANGUAGE="JavaScript1.2" в тэге SCRIPT:

Если indexA больше, чем indexB, JavaScript возвращает подстроку, начинающуюся с indexB и заканчивающуюся indexA - 1.


Примеры
Пример 1.

В это примере subString используется для отображения символов из строки "Netscape":

var anyString="Netscape"

// Displays "Net"

document.write(anyString.subString(0,3))

document.write(anyString.subString(3,0))

// Displays "cap"

document.write(anyString.subString(4,7))

document.write(anyString.subString(7,4))

// Displays "Netscap"

document.write(anyString.subString(0,7))

// Displays "Netscape"

document.write(anyString.subString(0,8))

document.write(anyString.subString(0,10))

Пример 2.

В это примере замещается подстрока в строке. будут замещаться отдельные символы и подстроки. Вызов функции в конце примера изменяет строку "Brave New World" в "Brave New Web".

function replaceString(oldS,newS,fullS) {

// заменяет oldS на newS в String> fullS

 for (var i=0; i<fullS.length; i++) {

    if (fullS.subString(i,i+oldS.length) == oldS) {

       fullS = fullS.subString(0,i)+newS+fullS.subString(i+oldS.length,fullS.length)

    }

 }

 return fullS

}

replaceString("World","Web","Brave New World")

Пример 3.

В JavaScript 1.2, используя LANGUAGE="JavaScript1.2", следующий скрипт производит ошибку времени выполнения (out of memory).

<SCRIPT LANGUAGE="JavaScript1.2">

str="Netscape"

document.write(str.subString(0,3);

document.write(str.subString(3,0);

</SCRIPT>

Без LANGUAGE="JavaScript1.2", вышеприведённый скрипт печатает следующее:

Net Net

Во втором write индексы поменялись местами.


См. также

.



Sun


Любой класс из Java-пакета sun.*.

Свойство из

Реализовано в

JavaScript 1.1, NES 2.0


Синтаксис

Packages.sun


Описание

Используйте свойство sun для доступа к любому классу пакета sun из кода JavaScript. Заметьте, что объект верхнего уровня sun является синонимом Packages.sun.

Примеры

См. примеры для

.

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.


Объект верхнего уровня, используемый для доступа к Java-классам в пакете sun.*.

 

Объект ядра

Реализован в JavaScript 1.1, NES 2.0


Создание

Объект sun это предопределённый объект верхнего уровня в JavaScript. Вы можете автоматически получать к нему доступ без использования конструктора или вызова метода.


Описание

Объект sun это синоним для свойства Packages.sun.


См. также

,


    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.



Sup


Выводит строку как надиндекс, как при использовании тэга <SUP>.

Метод из

Реализован в

JavaScript 1.0, NES 2.0

Синтаксис

sup()

Параметры

Отсутствуют.

Описание

Используйте метод sup с методами write или writeln для форматирования и отображения строки в документе. В серверном JavaScript используйте для генерации HTML функцию write.


Примеры

Здесь методы sub и sup используются при форматировании строки:

var superText="superscript"

var subText="subscript"

document.write("This is what a " + superText.sup() + " looks like.")

document.write("<P>This is what a " + subText.sub() + " looks like.")

Вывод будет таким же, как и в нижеследующем HTML:

This is what a <SUP>superscript</SUP> looks like.

<P>This is what a <SUB>subscript</SUB> looks like.

См. также

.



Switch


Позволяет программе вычислять выражение и попытаться сопоставить его значение с меткой case.

Реализован в

JavaScript 1.2, NES 3.0

Версия ECMA

ECMA-262, Edition 3


Синтаксис

switch (expression){

   case label :

      statements;

      break;

   case label :

      statements;

      break;

   ...

   default : statements;

}

 


Параметры

expression

Значение, сопоставляемое с label.

label Идентификатор, используемый при сопоставлении с expression.

statements Блок операторов, выполняемый однократно при совпадении expression с label.


Описание

Если совпадение найдено, программа выполняет ассоциированный оператор. Если несколько case совпадают с предоставленным значением, выбирается первый совпавший case, даже если все эти case не равны один другому.

Программа сначала ищет метку/label, совпадающую со значением expression/выражения, а затем выполняет ассоциированный оператор. Если ни один лэйбл не совпал, программа ищет необязательный оператор default  и, если он найден, выполняет ассоциированный оператор. Если оператор default не найден, программа продолжает выполняться с оператора после конца блока switch.

Необязательный оператор , ассоциированный с каждой меткой case, гарантирует что прервёт выполнение блока switch, после того как совпадающий оператор будет выполнен, и продолжит выполнение с оператора, идущего после блока switch. Если опущен, программа продолжает выполнение с оператора, следующего после оператора switch.


Примеры

Если expression вычисляется до "Bananas", программа ищет совпадение этого значения с case "Bananas" и выполняет ассоциированный оператор. Если обнаружен , программа прерывает выполнение блока switch и выполняет оператор, идущий после switch. Если отсутствует, оператор для case

"Cherries" также будет выполнен.

switch (i) {
   case "Oranges" :

      document.write("Oranges are $0.59 a pound.<BR>");

      break;

   case "Apples" :

      document.write("Apples are $0.32 a pound.<BR>");

      break;

   case "Bananas" :

      document.write("Bananas are $0.48 a pound.<BR>");

      break;

   case "Cherries" :

      document.write("Cherries are $3.00 a pound.<BR>");

      break;

   default :

      document.write("Sorry, we are out of " + i + ".<BR>");

}

document.write("Is there anything else you'd like?<BR>");



Tan


Возвращает тангенс числа.

Метод из Static

Реализован вJavaScript 1.0, NES 2.0

Версия ECMAECMA-262

Синтаксис
tan(x)

Параметр

x

Число.

Описание

Метод tan возвращает числовое значение, представляющее тангенс угла.

Поскольку tan это static-метод из Math, Вы всегда используете его так: Math.tan(), а не как метод Math-объекта, созданного Вами.

Пример

Эта функция возвращает тангенс переменной x:

function getTan(x) {

   return Math.tan(x)

}


См. также

, , , , , .

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.



Test


Выполняет поиск совпадения регулярного выражения и специфицированной строки. Возвращает true или false.

Метод изЭкземпляры .

Реализован вJavaScript 1.2, NES 3.0

Версия ECMAECMA 262, Edition 3


Синтаксис

regexp.test([str])

Параметры

regexp

Имя регулярного выражения. Может быть именем переменной или литералом.str

Строка, относительно которой выполняется совпадение с регулярным выражением.

Описание

Если Вы хотите знать, найден ли патэрн в строке, используйте метод test (аналогичный методу ); для получения большей информации (но более медленного выполнения) используйте метод (аналогичный методу ).

Пример

Этот пример печатает сообщение, содержание которого зависит от успешности теста:

function testinput(re, str){

   if (re.test(str))

      midstring = " contains ";

   else

      midstring = " does not contain ";

   document.write (str + midstring + re.source);

}



This


Это ключевое слово ссылается на текущий объект. Вообще, в методе this

ссылается на вызывающий объект.

Реализован вJavaScript 1.0

Версия ECMAECMA-262


Синтаксис

this[.propertyName]


Примеры

Предположим, функция под названием validate

проверяет значение свойства объекта и верхнее и нижнее значения:

function validate(obj, lowval, hival) {

   if ((obj.value < lowval) (obj.value > hival))

      alert("Invalid Value!")

}

Вы можете вызвать validate

в обработчике события onChange в каждом элементе формы, используя this

для передачи е1 (функции) элемента формы, как в следующем примере:

<B>Enter a number between 18 and 99:</B>

<INPUT TYPE = "text" NAME = "age" SIZE = 3

   onChange="validate(this, 18, 99)">


 



Throw


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

Реализован в

JavaScript 1.4

Версия ECMA

ECMA-262, Edition 3


Синтаксис

throw expression;


Параметры

expression

Значение для throw.


Описание

Использование оператора throw для вызова исключения. Если вы вызываете исключение, оно специфицирует значение для исключения. Вот вызовы нескольких исключений.

throw "Error2";    // генерирует исключение со строковым значением

throw 42;          // генерирует исключение с числовым значением 42

throw true;        // генерирует исключение со значением true


Примеры

Пример 1: Отлов объекта.

При отлове исключения Вы можете специфицировать объект. Затем Вы можете обращаться к свойствам объекта в блоке catch. В этом примере создаётся объект myUserException типа UserException, и он используется в операторе throw.

function UserException (message) {

   this.message=message;

   this.name="UserException";

}

function getMonthName (mo) {

   mo=mo-1; // Уточняет число month относительно индекса массива (1=Jan, 12=Dec)

   var months=new Array("Jan","Feb","Mar","Apr","May","Jun","Jul",

      "Aug","Sep","Oct","Nov","Dec");

   if (months[mo] != null) {

      return months[mo];

   } else {

      myUserException=new UserException("InvalidMonthNo");

      throw myUserException;

   }

}

try {

   // операторы для try;

   monthName=getMonthName(myMonth)

}

catch (e) {

   monthName="unknown";

   logMyErrors(e.message,e.name); // передаёт объект исключения обработчику ошибок

}

Пример 2: Отлов объекта.

Здесь тестируется строка для ввода zip-кода США. Если zip-код использует неверный формат, оператор throw вызывает исключение, создавая объект типа ZipCodeFormatException.

/*

 * Создаётся объект ZipCode.

 *

 * Принимаемые форматы zip-кода:

 *    12345

 *    12345-6789

 *    123456789

 *    12345 6789

 *

 * Если аргумент, передаваемый ZipCode-конструктору, не соответствует

 * одному из этих патэрнов, вызывается исключение.

 */

function ZipCode(zip) {

   zip = new String(zip);

   pattern = /[0-9]{5}([- ]?[0-9]{4})?/;

   if (pattern.test(zip)) {

      // значением zip-кода будет первое найденное совпадение в строке

      this.value = zip.match(pattern)[0];

      this.valueOf = function (){return this.value};

      this.toString = function (){return String(this.value)};

   } else {

      throw new ZipCodeFormatException(zip);

   }

}

function ZipCodeFormatException(value) {

   this.value = value;

   this.message =

      "does not conform to the expected format for a zip code";

   this.toString =

      function (){return this.value + this.message};

}

/*

 * Эти строки могут находиться в скрипте, проверяющем данные адреса
 * для адресов США.

 */

var ZIPCODE_INVALID = -1;
var ZIPCODE_UNKNOWN_ERROR = -2;

function verifyZipCode(z) {

   try {

      z = new ZipCode(z);

   }

   catch (e) {

      if (e instanceof ZipCodeFormatException) {

         return ZIPCODE_INVALID;

      }

      else {

         return ZIPCODE_UNKNOWN_ERROR;

      }

   }

   return z;

}

a=verifyZipCode(95060);         // возвращает 95060

b=verifyZipCode(9560;)          // возвращает -1

c=verifyZipCode("a");           // возвращает -1

d=verifyZipCode("95060");       // возвращает 95060

e=verifyZipCode("95060 1234");  // возвращает 95060 1234

 

Пример 3: Повторный вызов исключения.

Вы можете использовать throw для повторного вызова исключения после его отлова. Следующий пример отлавливает исключение с числовым значением и вызывает его повторно, если его значение больше 50. Повторно вызванное исключение передаётся в содержащую функцию, или на верхний уровень так, чтобы пользователь увидел его.

try {

   throw n // вызывает исключение с числовым значением

}

catch (e) {

   if (e <= 50) {

      // операторы для обработки исключений 1-50

   }

   else {

      // не может обработать это исключение, поэтому вызывает его повторно

      throw e

   }

}


См. также



ToExponential


Возвращает строку, представляющую объект Number в экспоненциальной нотации.

Метод из Реализован в

JavaScript 1.5

Версия ECMAECMA-262, Edition 3


Синтаксис

toExponential([fractionDigits])

Параметр

fractionDigits

Целое, специфицирующее количество цифр после десятичной точки. По умолчанию - столько цифр, сколько необходимо для специфицирования числа.

Описание

Метод Number.prototype.toExponential возвращает строку, представляющую объект Number в экспоненциальной нотации, с одной цифрой перед десятичной точкой, округлённое до fractionDigits после после десятичной точки. Если аргумент fractionDigits

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

Если Вы используете метод toExponential для числового литерала и этот числовой литерал не имеет экспоненты и десятичной точки, оставьте пространство перед точкой, предшествующей вызову метода, чтобы предотвратить интерпретацию этой точки как десятичной.

Если число имеет больше цифр, чем запрошено параметром fractionDigits, число округляется до ближайшего числа, представляемого цифрами fractionDigits . См. обсуждение округления значений в описании метода , которое применимо также к toExponential.


Примеры

var num=77.1234

alert("num.toExponential() is " + num.toExponential())   //выводит 7.71234e+1

alert("num.toExponential(4) is " + num.toExponential(4)) //выводит 7.7123e+1   

alert("num.toExponential(2) is " + num.toExponential(2)) //выводит 7.71e+1

alert("77.1234.toExponential() is " + 77.1234.toExponential())

//выводит 7.71234e+1

alert("77 .toExponential() is " + 77 .toExponential())   //выводит 7.7e+1

См. также

, ,

.



ToFixed


Возвращает строку, представляющую объект Number в нотации с фиксированной точкой.

Метод из Реализован в

JavaScript 1.5

Версия ECMAECMA-262, Edition 3


Синтаксис

toFixed([fractionDigits])

Параметр

fractionDigits

Целое, специфицирующее количество цифр после десятичной точки. По умолчанию - нуль.


Описание

Метод Number.prototype.toFixed возвращает строку, представляющую объект Number в нотации с фиксированной точкой, округлённый до количества цифр после десятичной точки, специфицированного fractionDigits..

Вывод toFixed может быть более точным, чем toString

для некоторых значений, поскольку toString

выводит только несколько значащих цифр, достаточных для отличения числа от соседних числовых значений.

Если число содержит больше цифр, чем специфицировано параметром fractionDigits , оно округляется до ближайшего числа, представляемого цифрами fractionDigits. Если число расположено точно посередине между двумя представимыми числами, оно округляется в сторону от нуля (в сторону увеличения - если оно положительное, в сторону уменьшения - если отрицательное). Таким образом:

  0.124.toFixed(2) возвращает "0.12"

0.125.tofixed(2) возвращает "0.13", поскольку 0.125 это точно посередине между 0.12 и 0.13

0.126.tofixed(2) возвращает "0.13".

Следуя данному соглашению, можно ожидать, что 0.045.toFixed(2)

возвратит  "0.05", но оно возвращает "0.04". Это происходит из-за того способа представления компьютером чисел с плавающей точкой IEEE 754. Стандарт IEEE 754 использует двоичные дроби (доли нуля и единицы после точки). Так же, как некоторые числа, такие как 1/3, не представляются точно десятичными дробями, другие числа, как 0.045, не представляются точно двоичными дробями. Стандарт IEEE 754 диктует, что 0.045 приближается до числа 0.04499999999999999833466546306226518936455249786376953125, которое может быть точно представлено как двоичная дробь. Это приближение ближе к 0.04, чем к 0.05, поэтому 0.045.toFixed(2) возвращает "0.04".

Примеры

var num=10.1234

alert("num.toFixed()  is " + num.toFixed())  //выводит  10

alert("num.toFixed(4) is " + num.toFixed(4)) //выводит

 10.1234  alert("num.toFixed(2) is " + num.toFixed(2)) //выводит  10.12

См. также

, ,

/



ToGMTString


Конвертирует дату в строку, используя соглашения Internet GMT.

Метод из Реализован в

JavaScript 1.0, NES 2.0

Не рекомендуется в JavaScript 1.3Версия ECMA

ECMA-262

Синтаксис
toGMTString()

Параметры

Отсутствуют.


Описание

toGMTString больше не используется и заменён на метод .

Точный формат значения, возвращаемого методом toGMTString, варьируется в зависимости от платформы.

Вы должны использовать вместо toGMTSTring.

Примеры

В это примере today это Date-объект:

today.toGMTString()

В следующем примере метод toGMTString конвертирует дату к GMT (UTC), используя часовой пояс операционной системы, и возвращает строковое значение примерно такой формы. Точный формат зависит от платформы.

Mon, 18 Dec 1995 17:28:35 GMT

См. также

, .



ToLocaleString


Конвертирует дату в строку, используя текущие локальные соглашения.

Метод из

Реализован вJavaScript 1.0, NES 2.0

Версия ECMA

ECMA-262


Синтаксис

toLocaleString()

Параметры

Отсутствуют.


Описание

Метод toLocaleString при форматировании данных основывается на используемой операционной системе. Он конвертирует дату в строку, используя соглашения по форматированию ОС, в которой запущен скрипт. Например, в США месяц вводится до числа (04/15/98), в то время как в Германии число идёт впереди месяца (15.04.98). Если ОС не совместима с year-2000 и не использует полный год для лет до 1900 или после 2000, toLocaleString возвращает строку, которая не совместима с year-2000.

toLocaleString ведёт себя похоже на toString при конвертировании года, когда система не выполняет правильное форматирование.

Методы, такие как , и , дают более переносимый результат, чем toLocaleString.


Примеры

В этом примере today является Date -объектом:

today = new Date(95,11,18,17,28,35) //месяцы даны числами от 0 до 11

today.toLocaleString()

Здесь toLocaleString возвращает строковое значение, которое похоже на следующую форму. Точный формат зависит от платформы.

12/18/95 17:28:35


См. также

, .



ToLowerCase


Вызывающее строковое значение возвращается конвертированным в нижний регистр.

Метод из

Реализован вJavaScript 1.0, NES 2.0

Версия ECMA

ECMA-262

Синтаксис

toLowerCase()

Параметры

Отсутствуют.

Описание

Метод toLowerCase возвращает в качестве значения строку, конвертированную в нижний регистр.
toLowerCase не влияет на значение самой строки.


Примеры

Следующий пример выводит строку "alphabet" в нижнем регистре:

var upperText="ALPHABET"

document.write(upperText.toLowerCase())

См. также

.



ToPrecision


Возвращает строку, представляющую Number-объект со специфицированной точностью.

Метод из Реализован в

JavaScript 1.5Версия ECMA

ECMA-262, Edition 3

Синтаксис

toPrecision([precision])

Параметр

precision

Целое число, специфицирующее количество цифр после десятичной точки.


Описание

Метод Number.prototype.toPrecision

возвращает строку, представляющую Number-объект в нотации с фиксированной точкой или экспоненциальной нотации, округлённый до значащих цифр precision .

Если Вы используете метод toPrecision

для числовых литералов и числовой литерал не содержит экспоненты или десятичной точки, оставьте пространство перед точкой, предшествующей вызову метода, для предотвращения интерпретации этой точки как десятичной точки.

Если аргумент precision  отсутствует, поведение аналогично Number.prototype.toString.

Если число содержит больше цифр, чем запрошено параметром precision, число округляется до ближайшего числа, представляемого цифрами precision. См. в описании метода обсуждение округления чисел, применяемого также в toPrecision.

Примеры

var num=5.123456

alert("num.toPrecision()  is " + num.toPrecision())      //выводит 5.123456

alert("num.toPrecision(4) is " + num.toPrecision(4))     //выводит 5.123

alert("num.toPrecision(2) is " + num.toPrecision(2))     //выводит 5.1

alert("num.toPrecision(2) is " + num.toPrecision(1))     //выводит 5

alert("num.toPrecision(2) is " + num.toPrecision(1))     //выводит 5

alert("1250 .toPrecision() is " + 1250 .toPrecision(2))  //выводит 1.3e+3

alert("1250 .toPrecision(5) is " + 1250 .toPrecision(5)) //выводит 1250.0


См. также

, , /



ToSource


Возвращает строку исходного кода массива.

Метод из Реализован в

JavaScript 1.3


Синтаксис

toSource()


Параметры

Отсутствуют.


Описание

Метод toSource возвращает следующие значения:

Для встроенного объекта Array метод toSource

возвращает следующие строки, обозначающие недоступность исходного кода:

   function Array() {

      [native code]

   }

Для Array-экземпляров toSource возвращает строку исходного кода.

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде. Вы можете вызвать toSource в ходе отладки, чтобы проверить содержимое массива.


Примеры

Чтобы проверить исходный код массива:

alpha = new Array("a", "b", "c")

alpha.toSource() //возвращает ["a", "b", "c"]

См. также


Возвращает строку исходного кода объекта.

Метод из Реализован в

JavaScript 1.3


Синтаксис

toSource()


Параметры

Отсутствуют.


Описание

Метод toSource возвращает следующие значения:

Для встроенного объекта Boolean метод toSource возвращает следующие строки, указывающие, что исходный код недоступен:

   function Boolean() {

      [native code]

   }

Для Boolean-экземпляров toSource возвращает строку исходного кода.

Этот метод обычно вызывается JavaScript внутренне, а не явно в коде.


См. также




Эта возможность отсутствует в спецификации ECMA, которая соответствует JavaScript 1.3, но ожидается её появление в следующей версии.

Возвращает строку исходного кода функции.

Метод из

Реализован вJavaScript 1.3


Синтаксис

toSource()


Параметры

Отсутствуют.

Описание

Метод toSource возвращает следующие значения:

Для встроенного объекта Function метод toSource возвращает следующую строку, означающую, что исходный код недоступен:

   Function Function() {

      [native code]

   }

Для специальных функций метод toSource возвращает JavaScript-источник, который определяет объект как строку.

Этот метод обычно вызывается внутренне в JavaScript, а не явным кодом. Вы можете вызывать toSource во время отладки для проверки содержимого объекта.

См. также

, .




Возвращает строку с исходным кодом объекта.

Метод из Реализован в

JavaScript 1.3

Синтаксис
toSource()

Параметры

Отсутствуют.

Описание

Метод toSource возвращает следующие значения:

Для встроенного объекта Number, toSource

возвращает сроку, указывающую, что исходный код недоступен:

   function Number() {

      [native code]

   }

Для экземпляров Number, toSource возвращает строку исходного кода.

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде.


См. также

.




Возвращает строку - исходный код объекта.

Метод из

Реализован вJavaScript 1.3


Синтаксис

toSource()

Параметры

Отсутствуют.


Описание

Метод toSource возвращает следующие значения:

Для встроенного объекта Object, toSource

возвращает следующую строку, означающую, что исходный код недоступен:

function Object() {

      [native code]

   }

Для экземпляров Object, toSource возвращает строку исходного кода.

Для специальных объектов, toSource

возвращает JavaScript-источник, который определяет объект как строку.

Этот метод обычно вызывается в JavaScript внутренне, а не явно в коде. Вы можете вызывать toSource при отладке для проверки содержимого объекта.

Примеры

Следующий код определяет тип объекта Dog

и создаёт theDog, объект типа Dog:

function Dog(name,breed,color,sex) {

   this.name=name

   this.breed=breed

   this.color=color

   this.sex=sex

}

theDog = new Dog("Gabby","Lab","chocolate","girl")

Вызов метода toSource из theDog отображает JavaScript-источник, который определяет этот объект:

theDog.toSource()

//возвращает "{name:"Gabby", breed:"Lab", color:"chocolate", sex:"girl"}

См. также

.




Возвращает строку исходного кода объекта.

Метод из Реализован вJavaScript 1.3


Синтаксис

toSource()

Параметры

Отсутствуют.

Описание

Метод toSource возвращает следующие значения:

Для встроенного объекта RegExp, toSource возвращает следующую строку, указывающую, что исходный код недоступен:

function Boolean() {

      [native code]

   }

Для экземпляров RegExp, toSource возвращает строку исходного кода объекта.

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде.

См. также

.




Возвращает строку - исходный код объекта.

Метод из

Реализован вJavaScript 1.3

Синтаксис

toSource()

Параметры

Отсутствуют.


Описание

Метод toSource возвращает следующие значения:

Для встроенного объекта String, toSource возвращает следующую строку, указывающую, что исходный код недоступен:

function String() {

      [native code]

   }

Для экземпляров String или строковых литералов, toSource возвращает строку исходного кода.

Это метод обычно вызывается внутренне в JavaScript, а не явно в коде.



ToString


Возвращает строку, представляющую специфицированный массив и его элементы.

Метод из Реализован в

JavaScript 1.1, NES 2.0Версия ECMA

ECMA-262


Синтаксис

toString()


Параметры

Отсутствуют.


Описание

Объект переопределяет метод toString

из . Для объектов метод toString объединяет массив и возвращает одну строку, содержащую все элементы массива, разделённые запятыми. Например, следующий код создаёт массив и использует toString

для конвертации массива в строку.

var monthNames = new Array("Jan","Feb","Mar","Apr")

myVar=monthNames.toString() // присваивает "Jan,Feb,Mar,Apr" переменной myVar

JavaScript вызывает метод toString

автоматически, когда массив представлен как текстовое значение или когда на массив имеется ссылка при конкатенации строк.


Обратная Совместимость


JavaScript 1.2.

Если Вы специфицируете LANGUAGE="JavaScript1.2" в тэге <SCRIPT>, toString возвращает строку, представляющую исходный код массива. Это то же самое значение, что и значение, возвращаемое методом toSource в JavaScript 1.3 и более поздних версиях.

<SCRIPT LANGUAGE="JavaScript1.2">

var monthNames = new Array("Jan","Feb","Mar","Apr")

myVar=monthNames.toString() // присваивает '["Jan", "Feb", "Mar", "Apr"]'

                            // переменной myVar

</SCRIPT>

См. также


Возвращает строку, представляющую специфицированный Boolean-объект.

Метод из

Реализован в

JavaScript 1.1, NES 2.0Версия ECMA

ECMA-262


Синтаксис

toString()


Параметры

Отсутствуют.


Описание

Объект переопределяет метод toString объекта ; он не наследует . Для -объектов метод toString возвращает строковое представление объекта.

JavaScript вызывает метод toString автоматически, если Boolean представлен как текстовое значение или если на Boolean имеется ссылка при конкатенации строк.

Для объектов и значений встроенный метод toString возвращает строку "true" или "false", в зависимости от значения булева объекта. В следующем коде flag.toString возвращает "true".

var flag = new Boolean(true)

var myVar=flag.toString()


См. также




Возвращает строку исходного кода функции.

Метод из

Реализован вJavaScript 1.1, NES 2.0

Версия ECMAECMA-262


Синтаксис

toString()


Параметры

Отсутствуют.

Описание

Объект переопределяет метод toString объекта ; он не наследует . Для объектов метод toString возвращает строку представления объекта.

JavaScript вызывает метод toString автоматически при представлении как текстового значения или когда на ссылаются при конкатенации строк.

Для объектов встроенный метод toString декомпилирует функцию обратно в JavaScript-исходник, который определяет функцию. Эта строка содержит ключевое слово Function, список аргументов, фигурные скобки и тело функции.

Например, предположим, у нас есть следующий код, определяющий тип объекта Dog

и создающий theDog, объект типа Dog:

Function Dog(name,breed,color,sex) {

   this.name=name

   this.breed=breed

   this.color=color

   this.sex=sex

}

theDog = new Dog("Gabby","Lab","chocolate","girl")

В любое время, когда Dog

используется в строковом контексте, JavaScript автоматически вызывает функцию toString, которая возвращает следующие строки:

Function Dog(name, breed, color, sex) { this.name = name; this.breed = breed; this.color = color; this.sex = sex; }


См. также

.

valueOf">




Возвращает строковое представление JavaArray.

Метод из

Реализован в

JavaScript 1.1, NES 2.0


Параметры

Отсутствуют.


Описание

Вызывает метод java.lang.Object.toString, который возвращает значение следующего выражения:

JavaArray.getClass().getName() + '@' +

     java.lang.Integer.toHexString(JavaArray.hashCode())


Обратная Совместимость

JavaScript 1.3 и ранее.

Метод toString наследуется из объекта Object и возвращает следующее значение:

[object JavaArray]

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.




Метод. Конвертирует JSObject в String.

Переопределяет: toString

в классе java.lang.Object.

Объявление
public String toString()

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.




Возвращает строку, представляющую специфицированный Number-объект.

Метод из Реализован в

JavaScript 1.1Версия ECMA

ECMA-262

Синтаксис

toString()

toString([radix])

Параметр

radix

Цело число в диапазоне от 2 до 36, специфицирующее базу для использования при представлении числовых значений.


Описание

Объект переопределяет метод toString объекта ; он не наследует . Для объектов , метод toString возвращает строковое представление объекта.

JavaScript вызывает метод toString

автоматически, когда число представляется как текстовое значение или когда на число ссылаются в конкатенации строк.

Если Вы используете метод toString

для числовых литералов и числовой литерал не содержит экспоненты и десятичной точки, оставьте пространство перед точкой, предшествующей вызову метода, для предотвращения интерпретации этой точки как десятичной точки.

Для -объектов и значений, встроенный метод toString возвращает строку, представляющую значение числа.

var howMany=10;

alert("howMany.toString() is " + howMany.toString())

alert("45 .toString() is " + 45 .toString())

См. также

, ,

.




Возвращает строку, представляющую специфицированный объект.

Метод из

Реализован вJavaScript 1.0

Версия ECMAECMA-262


Синтаксис

toString()

Описание

Каждый объект имеет метод toString, который автоматически вызывается, если объект представляется как текстовое значение или если на объект имеется ссылка в конкатенации строк. Например, следующие примеры требуют, чтобы theDog был представлен как строка:

document.write(theDog)

document.write("The dog is " + theDog)

По умолчанию метод toString наследуется каждым объектом - потомком от Object. Вы можете переопределять этот метод для специальных/custom объектов, создаваемых Вами. Если Вы не переопределяете toStringв специальном объекте, toString

возвращает [object type], где type  это тип объекта или имя функции constructor, создавшей этот объект.

Например:

var o = new Object()

o.toString // возвращает [object Object]

Встроенные методы toString.

Каждый встроенный объект ядра JavaScript переопределяет метод toString

из Object для возвращения соответствующего значения. JavaScript вызывает этот метод по мере необходимости для конвертации объекта в строку.

 

Переопределение метода toString по умолчанию.

Вы можете создать функцию, вызываемую вместо метода toString

по умолчанию. Метод toString

не принимает аргументов и должен возвращать строку. Метод toString, который Вы создаёте, может иметь любое нужное Вам значение, но он будет лучше использоваться, если будет работать с информацией объекта.

Этот код определяет тип объекта Dog и создаёт theDog, объект типа Dog:

function Dog(name,breed,color,sex) {

   this.name=name

   this.breed=breed

   this.color=color

   this.sex=sex

}

theDog = new Dog("Gabby","Lab","chocolate","girl")

Если Вы вызываете метод toString

в специальном объекте object, он возвращает значение по умолчанию, унаследованное из Object:

theDog.toString() //возвращает [object Object]

Следующий код создаёт dogToString, функцию, которая будет использоваться для переопределения метода toString

по умолчанию. Эта функция генерирует строку, содержащую каждое свойство, в форме "property = value;".

function dogToString() {

   var ret = "Dog " + this.name + " is [\n"

   for (var prop in this)

      ret += " " + prop + " is " + this[prop] + ";\n"

   return ret + "]"

}

Следующий код присваивает определённую пользователем функцию методу toString объекта:

Dog.prototype.toString = dogToString

Замещая предыдущий код, theDog

используется в любой момент в строковом контексте, JavaScript автоматически вызывает функцию dogToString, которая возвращает:

Dog Gabby is [

  name is Gabby;

  breed is Lab;

  color is chocolate;

  sex is girl;

]

Метод toString объекта обычно вызывается JavaScript,но Вы сами можете вызывать его так:

var dogString = theDog.toString()

Обратная Совместимость

JavaScript 1.2.

Поведение метода toString

зависит от того, специфицируете ли Вы LANGUAGE="JavaScript1.2" в тэге <SCRIPT>:

Если Вы специфицируете LANGUAGE="JavaScript1.2"

в тэге <SCRIPT>, метод toString возвращает литерал объекта.

Если Вы не специфицируете LANGUAGE="JavaScript1.2" в тэге <SCRIPT>, метод toString возвращает[object type], как в других версиях JavaScript.


Примеры

Пример 1:

Объект location. Здесь печатается строковой эквивалент текущего location.

document.write("location.toString() это " + location.toString() + "<BR>")

На выходе будет:

location.toString() это file:///C|/TEMP/myprog.htmll

Пример 2:

Объект без строкового значения. Предположим, у Вас есть объект Image

с именем sealife, определённый так:

<IMG NAME="sealife" SRC="images\seaotter.gif" ALIGN="left" VSPACE="10">

Поскольку сам объект Image

не имеет специального метода toString, sealife.toString() возвращает:

[object Image]

 

Пример 3:

Параметр radix. Этот код печатает строковые эквиваленты чисел от 0 до 9 в десятичном и двоичном виде.

for (x = 0; x < 10; x++) {

   document.write("Decimal: ", x.toString(10), " Binary: ",

      x.toString(2), "<BR>")

}

На выходе будет:

Decimal: 0 Binary: 0

Decimal: 1 Binary: 1

Decimal: 2 Binary: 10

Decimal: 3 Binary: 11

Decimal: 4 Binary: 100

Decimal: 5 Binary: 101

Decimal: 6 Binary: 110

Decimal: 7 Binary: 111

Decimal: 8 Binary: 1000

Decimal: 9 Binary: 1001

См. также

,

.




Возвращает строку, представляющую специфицированный объект.

Метод из Реализован вJavaScript 1.1, NES 2.0

Версия ECMAECMA 262, Edition 3


Синтаксис

toString()

Параметры

Отсутствуют.

Описание

Объект переопределяет метод toString

объекта ; он не наследует . Для объектов метод toString возвращает строку, представляющую специфицированный объект.


Примеры

Отображается строковое значение RegExp-объекта:

myExp = new RegExp("a+b+c");

alert(myExp.toString())         displays "/a+b+c/"

См. также

.

      

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.




Возвращает строку, представляющую специфицированный объект.

Метод из

Реализован вJavaScript 1.1, NES 2.0

Версия ECMA

ECMA-262

Синтаксис

toString()

Параметры

Отсутствуют.


Описание

Объект переопределяет метод toString объекта ; он не наследует . Для -объектов метод toString

возвращает строковое представление объекта.


Примеры

В этом примере выводится строковое значение String-объекта:

x = new String("Hello world");

alert(x.toString())      // Выводится "Hello world"

См. также

.



ToUpperCase


Вызывающее строковое значение возвращается конвертированным в верхний регистр.

Метод из

Реализован в

JavaScript 1.0, NES 2.0

Версия ECMAECMA-262


Синтаксис

toUpperCase()

Параметры

Отсутствуют.


Описание

Метод toUpperCase возвращает в качестве значения строку, конвертированную в верхний регистр.
toUpperCase не влияет на значение самой строки.


Примеры

Этот пример выводит строку "ALPHABET" в верхнем регистре:

var lowerText="alphabet"

document.write(lowerText.toUpperCase())

См. также

.



ToUTCString


Конвертирует дату в строку, используя соглашение по универсальному времени.

Метод из Реализован в

JavaScript 1.3

Версия ECMAECMA-262

Синтаксис

toUTCString()

Параметры

Отсутствуют.

Описание

Значение, возвращаемое методом toUTCString, строка, сформатированная соответствии с соглашением по UTC. Формат возвращаемого значения может зависеть от платформы.

Примеры
var UTCstring;
Today = new Date();

UTCstring = Today.toUTCString();


См. также

, .



Try...catch


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

Реализован в

JavaScript 1.4

JavaScript 1.5, NES 6.0: добавлены множественные блоки catch (расширение Netscape).

Версия ECMA

ECMA-262, Edition 3


Синтаксис

try {

   statements

}

[catch (exception_var if expression)

   {statements}] . . .

[catch (exception_var) {statements}]

[finally {statements}]

 


Параметры

statements

Блок операторов, выполняемый однократно. Операторы могут быть декларативными (как var) или исполняемыми (как for).

catch Блок операторов, выполняемый при вызове исключения в блоке try.

exception_var Идентификатор объекта исключения.expression

Выражение для тестирования.

finally Блок операторов, выполняемый до завершения оператора try...catch. Это блок операторов выполняется независимо от того, было ли исключение отловлено или вызвано.


Описание

Оператор try...catch состоит из блока try, который содержит один или более операторов, и одного или более блоков catch, который содержит операторы, специфицирующие поведение при вызове исключения в блоке try. То есть, Вы можете продолжить блок try и, если это потерпит неудачу, передать управление в блок catch. Если любой оператор в блоке try (или в функции, вызываемой из блока try) вызывает исключение, управление немедленно передаётся блоку catch. Если исключение в блоке try не было вызвано, блок catch пропускается. Блок finally выполняется после выполнения блоков tru и catch, но до операторов, идущих после оператора try...catch.

Можно вкладывать друг в друга один или более операторов try...catch. Если внутренний оператор try...catch не имеет блока catch, выполняется вход в содержащий ("внешний") блок catch оператора try...catch.

Вы можете также использовать оператор try...catch для обработки исключений Java. См. в книге

информацию об исключениях Java.

Безусловный блок catch.

Если используется единственный безусловный блок catch, то вход в блок catch выполняется при вызове исключения. Например, это код вызывает исключение. Если исключение возникает, управление передаётся в блок catch.

try {

   throw "myException" // генерирует исключение

}

catch (e) {

   // операторы для обработки любого исключения

   logMyErrors(e) // объект исключения передаётся обработчику ошибок

}

 

Условные блоки catch.

Вы можете использовать один или несколько блоков catch для обработки специфических исключений. В этом случае вход в нужный блок catch выполняется при вызове специфицированного исключения. В следующем примере блок try может потенциально вызвать три исключения: TypeError, RangeError и EvalError. Если исключение возникает, управление передаётся в соответствующий блок catch. Если исключение не является одним из специфицированных, управление переходит к безусловному блоку catch в конце. Если Вы используете безусловный блок catch с одним или более условных блоков catch, безусловный блок catch обязан быть специфицированным в конце.

try {

   myroutine(); // может вызывать три исключения

}

catch (e if e instanceof TypeError) {

   // операторы для обработки исключений TypeError

}

catch (e if e instanceof RangeError) {

   // операторы для обработки исключений RangeError

}

catch (e if e instanceof EvalError) {

   // операторы для обработки исключений EvalError

}

catch (e){

   // операторы для обработки любого неспецифицированного исключения

   logMyErrors(e) // передаёт объект исключения обработчику исключений

}

 

Идентификатор исключения.

Если исключение вызывается в блоке try, exception_var содержит значение, специфицированное оператором throw; Вы можете использовать этот идентификатор для получения информации о вызванном исключении.

JavaScript создаёт этот идентификатор при входе в блок catch; этот идентификатор существует только в период работы блока catch; после того как блок catch завершает выполнение, идентификатор становится недоступным.

 

Блок finally.

Блок finally содержит операторы, выполняемые после выполнения блоков try и catch, но перед операторами, идущими после оператора try...catch. Блок finally выполняется независимо от того, было ли вызвано исключение. Если исключение вызывается, оператор в блоке finally выполняется даже тогда, когда ни один блок catch не обработал исключение.

Вы можете использовать блок finally для того, чтобы Ваш скрипт "изячно" завершался при возникновении исключения; например, может понадобиться освободить ресурс, задействованный скриптом. В следующем примере файл открывается, и выполняются операторы, использующие этот файл (серверный JavaScript позволяет получить доступ файлам). Если исключение вызывается при открытом файле, блок finally закрывает файл до краха скрипта.

openMyFile()

try {

   // связывается ресурс

   writeMyFile(theData)

}

finally {

   closeMyFile() // всегда закрывает ресурс

}


Примеры

См. примеры для .


См. также

.



Typeof



Операция typeof используется одним из следующих способов:

1. typeof operand

2. typeof (operand)

Операция typeof возвращает строку, указывающую тип невычисленного операнда.

operand это строка, переменная, ключевое слово или объект, тип которого возвращается. Скобки не обязательны.

Реализована вJavaScript 1.1

Версия ECMAECMA-262

Предположим, Вы определили следующие переменные:

var myFun = new Function("5+2")

var shape="round"

var size=1

var today=new Date()

Операция typeof возвращает для этих переменных следующие результаты:

typeof myFun is object

typeof shape is string

typeof size is number

typeof today is object

typeof dontExist is undefined

Для ключевых слов true и null операция typeof возвращает:

typeof true is boolean

typeof null is object

Для чисел или строк операция typeof

возвращает:

typeof 62 is number

typeof 'Hello world' is string

Для значений свойств операция typeof

возвращает тип значения, содержащегося в свойстве:

typeof document.lastModified is string

typeof window.length is number

typeof Math.LN2 is number

Для методов и функций операция typeof возвращает:

typeof blur is function

typeof eval is function

typeof parseInt is function

typeof shape.split is function

Для предопределённых объектов операция typeof возвращает:

typeof Date is function

typeof Function is function

typeof Math is function

typeof Option is function

typeof String is function



- (Унарное Отрицание)


Операция унарного отрицания ставится перед операндом и выполняет его отрицание. Например, y= -x меняет знак (отрицает) значения x и присваивает это значение переменной y; то есть, если x = 3, y может получить значение -3, а x останется в значении 3.



Unshift


Добавляет один или более элементов в начало массива и возвращает новый размер массива.

Метод из Реализован в

JavaScript 1.2, NES 3.0Версия ECMA

ECMA-262 Edition 3


Синтаксис

arrayName.unshift(element1,..., elementN)


Параметры

element1,...,

elementN

Элементы, добавляемые в начало массива.


Пример

Следующий код отображает массив myFish до и после добавления элементов:

myFish = ["angel", "clown"];

document.writeln("myFish до: " + myFish);

unshifted = myFish.unshift("drum", "lion");

document.writeln("myFish после: " + myFish);

document.writeln("Новый размер: " + unshifted);

Вывод будет таким:

myFish до: ["angel", "clown"]

myFish после: ["drum", "lion", "angel", "clown"]

Новый размер: 4

См. также

, ,



Unwatch


Удаляет контрольную точку, установленную методом .

Метод из

Реализован вJavaScript 1.2, NES 3.0


Синтаксис

unwatch(prop)

Параметр

propИмя свойства объекта.


Описание

Отладчик JavaScript имеет функциональность, похожую на функциональность, предоставляемую этим методом, а также другие опции отладки. информацию об использовании отладчика см. в

.

По умолчанию этот метод наследуется каждым объектом - потомком от Object.


Пример

См. .



UTC


Возвращает количество миллисекунд в Date-объекте, прошедших после 1 января 1970 года, 00:00:00 универсального времени.

Метод из

StaticРеализован в

JavaScript 1.0, NES 2.0

JavaScript 1.3: добавлен параметр ms.

Версия ECMAECMA-262

Синтаксис

Date.UTC(year, month, day[, hrs, min, sec, ms])

Параметры

year

Год после 1900.

month

Целое число в диапазоне от 0 до 11 - месяц.Date

Целое число в диапазоне от 1 до 31 - число месяца.

hrs

Целое число в диапазоне от 0 до 23 - час суток.

minЦелое число в диапазоне от 0 до 59 - минуты.sec

Целое число в диапазоне от 0 до 59 - секунды.

msЦелое число в диапазоне от 0 до 999 - миллисекунды.

Описание

UTC принимает разделённые запятыми параметры даты и возвращает количество миллисекунд, прошедших после 1 января 1970 года, 00:00:00 универсального времени и времени, специфицированного Вами.

Вы должны специфицировать полный год для year; например, 1998. Если специфицирован год от 0 до 99, этот метод конвертирует year в год 20-го столетия (1900 + year); например, если Вы специфицировали 95, будет использоваться значение 1995.

Метод UTC отличается от конструктора Date по двум позициям:

Date.UTC использует универсальное время, а не местное/локальное.

Date.UTC возвращает значение времени как число, а не создаёт объект Date.

Если специфицированный Вами параметр находится вне пределов ожидаемого диапазона, метод UTC обновляет другие параметры, чтобы предоставить Вам число. Например, если Вы используете 15 для month, то year будет увеличен на 1 (year + 1), а 3 будет использовано для month.

Поскольку UTC это static-метод объекта Date, Вы всегда используете его как Date.UTC(), а не как метод Date -объекта, созданного Вами.

Примеры

Этот оператор создаёт Date -объект, используя GMT вместо локального времени:

gmtDate = new Date(Date.UTC(96, 11, 1, 0, 0, 0))

См. также

.



ValueOf


Возвращает примитивное значение массива.

Метод из

Реализован в

JavaScript 1.1Версия ECMA

ECMA-262


Синтаксис

valueOf()


Параметры

Отсутствуют.


Описание

Объект наследует метод valueOf

из . Метод valueOf из Array возвращает примитивное значение массива или примитивное значение его элементов таким образом:

Тип объекта элемента

Тип данных возвращаемого значения

BooleanBoolean

Number или Date

numberВсе остальные

string

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде.

См. также


    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.


Возвращает примитивное значение объекта Boolean.

Метод из

Реализован в

JavaScript 1.1Версия ECMA

ECMA-262


Синтаксис

valueOf()


Параметры

Отсутствуют.


Описание

Метод valueOf в возвращает примитивное значение Boolean-объекта или литеральный Boolean

как тип данных Boolean.

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде.


Примеры

x = new Boolean();

myVar=x.valueOf()   //присваивает false переменной myVar


См. также


    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.




Возвращает строку исходного кода функции.

Метод из

Реализован вJavaScript 1.1

Версия ECMAECMA-262


Синтаксис

valueOf()


Параметры

Отсутствуют.


Описание

Метод valueOf возвращает следующие значения:

Для встроенного объекта Function метод valueOf возвращает следующую строку, означающую, что исходный код недоступен:

   Function Function() {

      [native code]

   }

Для специальных/custom функций toSource возвращает исходный код JavaScript, который определяет объект как строку. Этот метод эквивалентен методу toString функции.

Этот метод обычно вызывается внутренне в JavaScript, а не явным кодом.


См. также

, .

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.




Возвращает примитивное значение Number-объекта.

Метод из Реализован в

JavaScript 1.1Версия ECMA

ECMA-262

Синтаксис
valueOf()

Параметры

Отсутствуют.

Описание

Метод valueOf объекта возвращает примитивное значение Number-объекта как данные числового типа.

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде.

Примеры

x = new Number();

alert(x.valueOf())      //выводит 0

См. также

.

     

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.




Возвращает примитивное значение специфицированного объекта.

Метод из

Реализован вJavaScript 1.1

Версия ECMAECMA-262


Синтаксис

valueOf()

Параметры

Отсутствуют.

Описание

JavaScript вызывает метод valueOf для конвертации объекта в примитивное значение. Вам редко будет нужно вызывать метод valueOf; JavaScript автоматически вызывает его при обнаружении объекта, в котором ожидается примитивное значение.

По умолчанию метод valueOf наследуется каждым объектом - потомком от Object. Каждый встроенный объект ядра переопределяет этот метод для возвращения соответствующего значения. Если объект не имеет примитивного значения, valueOf

возвращает сам объект, который отображается так:

[object Object]

Вы можете использовать valueOf

в своём собственном коде для конвертации встроенного объекта в примитивное значение. Если Вы создаёте специальный объект, Вы можете переопределить для вызова специального метода вместо метода по умолчанию из Object.

Переопределение valueOf для специальных объектов.

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

Предположим, у Вас есть объект типа myNumberType

и Вы хотите создать для него метод valueOf. Следующий код присваивает определённую пользователем функцию методу valueOf объекта:

myNumberType.prototype.valueOf = new Function(functionText)

Вместо предшествующего кода, объект типа myNumberType

используется в контексте, где он представлен как примитивное значение, а JavaScript автоматически вызывает функцию, определённую в предыдущем коде.

Метод valueOf объекта обычно вызывается JavaScript, но Вы и сами можете вызвать его так:

myNumber.valueOf()

 

Примечание:

Объекты в строковом контексте конвертируются с помощью метода , который отличается от объектов String, конвертирующихся в строковые примитивы через использование valueOf. Все строковые объекты выполняют строковую конверсию, только если "[object type]". Но многие объекты не конвертируются в число, boolean или функцию.


См. также

,

.




Возвращает примитивное значение String-объекта.

Метод из

Реализован вJavaScript 1.1

Версия ECMAECMA-262


Синтаксис

valueOf()


Параметры

Отсутствуют.

Описание

Метод valueOf в

возвращает примитивное значение String-объекта как тип данных String. Это значение эквивалентно .

Этот метод обычно вызывается внутренне в JavaScript, а не явно в коде.


Примеры

x = new String("Hello world");

alert(x.valueOf())          // Выводит "Hello world"


См. также

,

.


    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.



Var


Объявляет переменную, инициализируя её (по выбору) значением.

Реализован в

JavaScript 1.0, NES 2.0

Версия ECMA

ECMA-262


Синтаксис

var varname [= value] [..., varname [= value] ]


Параметры

varname

Имя переменной. Любой верный идентификатор.

value Начальное значение переменной, может быть любым верным выражением.


Описание

Областью видимости переменной является текущая функция или, для переменных, объявленных вне функции, текущее приложение.

Использование var вне функции не обязательно, но рекомендуется; Вы можете объявить переменную, просто присвоив ей значение. Однако использование var является хорошим стилем и является необходимой в функции в следующих ситуациях:

если существует глобальная переменная с тем же именем;

если рекурсивно или в нескольких функциях используются переменные с тем же именем.


Примеры

var num_hits = 0, cust_no = 0



Версии JavaScript


Каждая версия Navigator'а поддерживает различные версии JavaScript. Чтобы помочь Вам создавать скрипты, совместимые с несколькими версиями Navigator'а, в этом документе указывается версия JavaScript для каждой реализованной опции.

В таблице перечислены версии JavaScript, поддерживаемые версиями Navigator.

Версии Navigator'а, предшествовавшие версии 2.0, не поддерживают JavaScript.

Таблица 1 &nbsp&nbsp Версии JavaScript и Navigator


Версия JavaScript

Версия Navigator

JavaScript 1.0

Navigator 2.0JavaScript 1.1

Navigator 3.0JavaScript 1.2

Navigator 4.0-4.05JavaScript 1.3

Navigator 4.06-4.7x

JavaScript 1.4-

JavaScript 1.5Navigator 6.0

Mozilla (свободно распространяемый браузер)

Каждая версия Netscape Enterprise Server также поддерживает различные версии JavaScript.

Чтобы помочь Вам создавать скрипты, совместимые с несколькими версиями

Enterprise Server, этот учебник использует сокращения для обозначения версии, в которой опция реализуется.

Таблица 2 &nbsp&nbsp Версии JavaScript и Netscape Enterprise Server

Аббревиатура

Версия Enterpriser ServerNES 2.0

Netscape Enterprise Server 2.0

NES 3.0Netscape Enterprise Server 3.0



Void



Операция void используется одним из следующих способов:

1. void (expression)

2. void expression

Операция void специфицирует выражение, вычисляемое без возвращения значения.

expression это вычисляемое выражение JavaScript. Скобки не обязательны, но хорошим стилем является их наличие.

Реализована вJavaScript 1.1

Версия ECMAECMA-262

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

Следующий код создаёт гипертекстовую ссылку, которая ничего не выполняет, если пользователь щёлкнет её. Если пользователь щёлкает ссылку, void(0)

вычисляется в 0, но в JavaScript это не вызывает действий.

<A HREF="javascript:void(0)">Click here to do nothing</A>

Следующий код создаёт гипертекстовую ссылку, которая отправляет форму, если пользователь щёлкнет её:

<A HREF="javascript:void(document.form.submit())">

Click here to submit</A>

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.



Возможности, Не Рекомендуемые для Использования




В это приложении перечислены элементы языка, не рекомендуемые для использования в JavaScript 1.5.

Свойства RegExp.

Следующие свойства использовать не рекомендуется:

 

Свойство

Описание

$1, ..., $9

Совпадение с подстроками в скобках, если имеются.

$_

См. input.

$*

См. multiline.

$&

См. lastMatch.

$+

См. lastParen.

$`

См. leftContext.

$'

См. rightContext.

input

Строка, относительно которой проверяется совпадение регулярного выражения.

lastMatch

Последние совпавшие символы.

lastParen

Последнее совпадение подстроки в скобках, если имеется.

leftContext

Подстрока, предшествующая самому последнему совпадению.

rightContext

Подстрока, следующая после самого последнего совпадения.

Далее идут свойства RegExp-экземпляров, а не объекта RegExp.

 

Свойство

Описание

global

тестировать ли регулярное выражение относительно всех возможных совпадений со строкой, или только относительно первого совпадения.

ignoreCase

Игнорировать ли регистр при попытках совпадения в строке.

lastIndex

Индекс, начиная с которого выполнять поиск следующего совпадения.

multiline

Искать ли в нескольких строках.

source

Текст патэрна.

Методы RegExp

Метод compile не рекомендуется использовать.

Метод valueOf больше не специализирован для RegExp. Использовать Object.valueOf.

Escape-последовательности

Восьмеричные escape-последовательности (\ с последующими одной, двумя или тремя 8-ричными цифрами) не рекомендуются в строках и литералах регулярных выражений.

Функции escape и unescape не рекомендуются. Используйте encodeURI, encodeURIComponent, decodeURI

или decodeURIComponent для кодирования и декодирования escape-последовательностей специальных символов.


    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.



Watch


Наблюдает за свойством, которому присвоено значение, и запускает функцию, если оно появляется.

Метод из Реализован в

JavaScript 1.2, NES 3.0

Синтаксис

watch(prop, handler)

Параметры

propИмя свойства объекта.

handlerВызываемая функция.


Описание

Наблюдает за присваиваемыми значениями в свойстве prop

данного объекта, вызывая handler(prop, oldval, newval), если значение prop

где-либо устанавливается, и сохраняя return-значение в этом свойстве. Точка контроля/watchpoint может фильтровать (или обнулять) присвоение значения, возвращая модифицированное newval (или старое oldval).

Если Вы удалите свойство, для которого была установлена контрольная точка, эта контрольная точка не исчезнет. Если Вы позднее воссоздадите это свойство, контрольная точка будет продолжать действовать.

Чтобы удалить контрольную точку, используйте метод . По умолчанию метод watch наследуется каждым объектом - потомком от Object.

Отладчик JavaScript имеет функциональность, похожую на функциональность, предоставляемую этим методом, а также другие опции отладки. информацию об использовании отладчика см. в .


Пример

<script language="JavaScript1.2">

o = {p:1}

o.watch("p",

   function (id,oldval,newval) {

      document.writeln("o." + id + " changed from "

         + oldval + " to " + newval)

      return newval

   })

o.p = 2

o.p = 3

delete o.p

o.p = 4

o.unwatch('p')

o.p = 5

</script>

Вывод скрипта:

o.p changed from 1 to 2
o.p changed from 2 to 3
o.p changed from 3 to 4

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября 2000 г.



While


Создаёт цикл, вычисляющий выражение, и, если оно true, выполняет блок операторов. Затем цикл повторяется, пока специфицированное условие true.

Реализован в

JavaScript 1.0, NES 2.0

Версия ECMA

ECMA-262


Синтаксис

while (condition) {

statements

}


Параметры

condition

Вычисляется перед началом каждой итерации цикла. Если это условие вычисляется в true, выполняются операторы в следующем блоке. Если condition вычисляется в false, выполнение продолжается в операторах, следующих после statements.

statements Блок операторов, выполняемый, пока условие true. Хотя это и не обязательно, желательно выделять эти операторы в коде отступом относительно начала оператора.


Примеры

Следующий цикл while итерирует, пока n меньше трёх:

n = 0;

x = 0;

while(n < 3) {

   n ++;

   x += n;

}

При каждой итерации цикла n увеличивается и прибавляется к  x. Следовательно, x и n принимают следующие значения:

После первого прохода: n = 1 и x = 1

После второго прохода: n = 2 и x = 3

После третьего прохода: n = 3 и x = 6

После завершения третьего прохода цикла, условие n < 3 больше не true, поэтому цикл прерывается.



With


Устанавливает объект по умолчанию для набора операторов.

Реализован в

JavaScript 1.0, NES 2.0

Версия ECMA

ECMA-262


Синтаксис

with (object){

   statements

}


Параметры

object

Специфицирует для операторов объект по умолчанию. Скобки вокруг object необходимы.

statements Блок операторов.


Описание

JavaScript просматривает все неквалифицированные имена в наборе операторов для определения того, являются ли имена свойствами объекта по умолчанию. Если неквалифицированное имя соответствует свойству, это свойство используется в операторе; иначе используется локальная или глобальная переменная.

Обратите внимание, что использование оператора with значительно замедлит работу кода. Если скорость работы является критичной, не используйте этот оператор.


Примеры

Следующий оператор специфицирует, что объект это объект по умолчанию. Операторы в блоке with обращаются к свойству и методам и без специфицирования объекта. JavaScript принимает для этих ссылок объект .

var a, x, y

var r=10

with (Math) {

   a = PI * r * r

   x = r * cos(PI)

   y = r * sin(PI/2)

}

 

    

Copyright © 2000 Все права зарезервированы.

Дата последнего обновления: 28 сентября  2000 г.