Клиентский JavaScript. Справочник

         

Пример


Второй оператор присваивает значение 11 переменной month на основе значения Date -объекта Xmas95.

Xmas95 = new Date("December 25, 1995 23:15:00")
month = Xmas95.getMonth()



Пример


Второй оператор присваивает значение 30 переменной secs на основе значения Date -объекта Xmas95.

Xmas95 = new Date("December 25, 1995 23:15:30")
secs = Xmas95.getSeconds()



Пример


Значение даты в theBigDay присваивается sameAsBigDay:

theBigDay = new Date("July 1, 1999")
sameAsBigDay = new Date()
sameAsBigDay.setTime(theBigDay.getTime())



Пример


x = new Date()
currentTimeZoneOffsetInHours = x.getTimezoneOffset()/60



Пример


Часть day текущей даты присваивается переменной d.

var d;
Today = new Date();
d = Today.getUTCDate();



Пример


Часть weekday текущей даты присваивается переменной ms.

var weekday;
Today = new Date()
weekday = Today.getUTCDay()



Пример


4-значное значение текущего года присваивается переменной yr.

var yr;
Today = new Date();
yr = Today.getUTCFullYear();



Пример


Часть hours текущего времени присваивается переменной hrs.

var hrs;
Today = new Date();
hrs = Today.getUTCHours();



Пример


Часть milliseconds текущего времени присваивается переменной ms.

var ms;
Today = new Date();
ms = Today.getUTCMilliseconds();



Пример


Часть minutes текущего времени присваивается переменной min.

var min;
Today = new Date();
min = Today.getUTCMinutes();



Пример


Часть month текущей даты присваивается переменной mon.

var mon;
Today = new Date();
mon = Today.getUTCMonth();



Пример


Часть seconds текущего времени присваивается переменной sec.

var sec;
Today = new Date();
sec = Today.getUTCSeconds();



Пример


Если IPOdate это существующий Date -объект, Вы можете установить его в August 9, 1995 таким образом:

IPOdate.setTime(Date.parse("Aug 9, 1995"))



Пример


Второй оператор изменяет theBigDay на July 24.

theBigDay = new Date("July 27, 1962 23:30:00")
theBigDay.setDate(24)



Пример


theBigDay = new Date();
theBigDay.setFullYear(1997);



Пример


theBigDay = new Date();
theBigDay.setMilliseconds(100);



Пример


Оператор создаёт Date -объект с использованием GMT вместо локального времени:

gmtDate = new Date(Date.UTC(96, 11, 1, 0, 0, 0))



Пример


Следующая функция использует свойство cookie для записи напоминания пользователю приложения. Дата окончания работы куки устанавливается в один день после даты напоминания.

function RecordReminder(time, expression) {
   // Записывает куку в форме "@<T>=<E>" для отображения
   // из <T> в миллисекундах,
   // возвращаемых методом Date.getTime(), в кодированное выражение,
   // <E> (кодировано с отсутствием символов пробелов, точки с запятой или запятой)
   document.cookie = "@" + time + "=" + expression + ";"
   // устанавливается время окончания работы куки в один день
   // после дня напоминания
   document.cookie += "expires=" + cookieDate(time + 24*60*60*1000)
   // cookieDate это функция, которая форматирует дату
   //в соответствии со спецификацией куки
}



Пример


Следующий оператор изменяет свойство domain в "braveNewWorld.com". Этот оператор верен только тогда, когда суффикс "braveNewWorld.com" является суффиксом текущего домена, такого как "www.braveNewWorld.com".

document.domain="braveNewWorld.com"



Пример


Если у Вас имеется форма со следующим кодом и Вы щёлкнули на кнопке, JavaScript отображает alert-диалог, содержащий текущий выделенный текст из окна, содержащего кнопку:

<INPUT TYPE="BUTTON" NAME="getstring"
VALUE="Show highlighted text (if any)"
   onClick="alert('You have selected:\n'+document.getSelection());">



Пример


Здесь свойство lastModified используется в тэге SCRIPT в конце HTML-файла для отображения даты изменения страницы:

document.write("This page updated on " + document.lastModified)



Пример


Здесь цвет гиперссылок документа устанавливается в aqua с использованием строкового литерала:

document.linkColor="aqua"

А здесь - с использованием 16-ричного триплета:

document.linkColor="00FFFF"



Пример


Здесь функция getReferrer вызывается из документа назначения. Она возвращает URL исходного документа.

function getReferrer() {
return document.referrer
}



Пример


Здесь значение свойства title присваивается переменной docTitle:

var newWindow = window.open("http://home.netscape.com")
var docTitle = newWindow.document.title



Пример


Выводится URL текущего документа:

document.write("The current URL is " + document.URL)



Пример


Здесь объект FileUpload помещается на форме и предоставляются две кнопки, которые дают возможность отобразить текущие значения свойств name и value.

<FORM NAME="form1">
File to send: <INPUT TYPE="file" NAME="myUploadObject">
<P>Get properties<BR>
<INPUT TYPE="button" VALUE="name"
   onClick="alert('name: ' + document.form1.myUploadObject.name)">
<INPUT TYPE="button" VALUE="value"
   onClick="alert('value: ' + document.form1.myUploadObject.value)"><BR>
</FORM>



Пример


Здесь в свойство action формы musicForm устанавливается значение переменной urlName:

document.musicForm.action=urlName



Пример


Эта функция возвращает значение свойства encoding формы musicForm:

function getEncoding() {
return document.musicForm.encoding
}



Пример


Функция valueGetter использует цикл for для итерации по массиву элементов формы valueTest. В окне msgWindow отображаются имена всех элементов формы:

newWindow=window.open("http://home.netscape.com") function valueGetter() {
var msgWindow=window.open("")
   for (var i = 0; i < newWindow.document.valueTest.elements.length; i++) {
      msgWindow.document.write(newWindow.document.valueTest.elements[i].name + "<BR>")
   }
}



Пример


Отображается объект Text, в котором пользователь печатает "CA" или "AZ". Обработчик события объекта Text onChange вызывает функцию, которая выполняет метод reset формы, если пользователь делает неверный ввод. Если метод reset выполняется, восстанавливаются значения по умолчанию, и обработчик onReset формы выводит сообщение.

<SCRIPT>
function verifyInput(textObject) {
if (textObject.value == 'CA' || textObject.value == 'AZ') {
      alert('Nice input')
   }
   else { document.myForm.reset() }
}
</SCRIPT> <FORM NAME="myForm" onReset="alert('Please enter CA or AZ.')">
Enter CA or AZ:
<INPUT TYPE="text" NAME="state" SIZE="2" onChange=verifyInput(this)><P>
</FORM>



Пример


Здесь специфицируется, что ответы форме musicInfo отображаются в окне msgWindow:

document.musicInfo.target="msgWindow"



Пример


Можно использовать apply для создания цепочки конструкторов объекта, как в Java. В следующем примере конструктор объекта product определяется с двумя параметрами, name и value. Другой объект, prod_dept, инициализирует свою уникальную переменную (dept) и вызывает конструктор для product в своём конструкторе для инициализации других переменных. Здесь параметр arguments использован для всех аргументов конструктора объекта product.

function product(name, value){
this.name = name;
   if(value > 1000)
      this.value = 999;
   else
      this.value = value;
} function prod_dept(name, value, dept){
   this.dept = dept;
   product.apply(product, arguments);
} prod_dept.prototype = new product(); // поскольку 5 меньше 100, значение устанавливается
cheese = new prod_dept("feta", 5, "food");// поскольку 5000 больше 1000, значение будет 999
car = new prod_dept("honda", 5000, "auto");



Пример


Использование Function.length и arguments.length.

function addNumbers(x,y){
if (arguments.length == addNumbers.length) {
      return (x+y)
   }
   else return 0
}

Если Вы передаёте этой функции больше двух аргументов, она возвращает 0:

result=addNumbers(3,4,5)   // возвращает 0
result=addNumbers(3,4)     // возвращает 7
result=addNumbers(103,104) // возвращает 207



Пример


Использование arity и arguments.length.

function addNumbers(x,y){
if (arguments.length == addNumbers.length) {
      return (x+y)
   }
   else return 0
}

Если Вы передаёте этой функции более двух аргументов, она возвращает 0:

result=addNumbers(3,4,5)   // возвращает 0
result=addNumbers(3,4)     // возвращает 7
result=addNumbers(103,104) // возвращает 207



Пример


Здесь создаётся метод str_rep и используется оператор String.prototype.rep = str_rep для добавления метода всем объектам String. Все объекты, созданные с помощью new String(), имеют теперь и этот метод, хотя объекты уже были созданы раньше. Затем создаётся альтернативный метод и добавляется к одному из объектов String через использование оператора s1.rep = fake_rep. Метод str_rep других String-объектов не изменяется.

var s1 = new String("a")
var s2 = new String("b")
var s3 = new String("c") // Создаётся метод repeat-string-N-times для всех объектов String
function str_rep(n) {
var s = "", t = this.toString()
   while (--n >= 0) s += t
   return s
} String.prototype.rep = str_rep s1a=s1.rep(3) // возвращает "aaa"
s2a=s2.rep(5) // возвращает "bbbbb"
s3a=s3.rep(2) // возвращает "cc"// Создаётся альтернативный метод и присваивается только одной String-переменной
function fake_rep(n) {
   return "repeat " + this + " " + n + " times."
} s1.rep = fake_rep
s1b=s1.rep(1) // возвращает "repeat a 1 times."
s2b=s2.rep(4) // возвращает "bbbb"
s3b=s3.rep(6) // возвращает "cccccc"

Функция из этого примера работает также со String-объектами, созданными без использования конструктора String. Следующий код возвращает "zzz".

"z".rep(3)



Пример


Здесь объект Hidden используется для хранения значения последнего объекта, по которому щёлкнул пользователь. Форма содержит кнопку "Display hidden value", которую пользователь может щёлкнуть для вывода значения объекта Hidden и диалога Alert.

<HTML>
<HEAD>
<TITLE>Hidden object example</TITLE>
</HEAD>
<BODY>
<B>Click some of these objects, then click the "Display value" button
<BR>to see the value of the last object clicked.</B>
<FORM NAME="myForm">
<INPUT TYPE="hidden" NAME="hiddenObject" VALUE="None">
<P>
<INPUT TYPE="button" VALUE="Click me" NAME="button1"
onClick="document.myForm.hiddenObject.value=this.value">
<P>
<INPUT TYPE="radio" NAME="musicChoice" VALUE="soul-and-r&b"
   onClick="document.myForm.hiddenObject.value=this.value"> Soul and R&B
<INPUT TYPE="radio" NAME="musicChoice" VALUE="jazz"
   onClick="document.myForm.hiddenObject.value=this.value"> Jazz
<INPUT TYPE="radio" NAME="musicChoice" VALUE="classical"
   onClick="document.myForm.hiddenObject.value=this.value"> Classical
<P>
<SELECT NAME="music_type_single"
   onFocus="document.myForm.hiddenObject.value=this.options[this.selectedIndex].text">
   <OPTION SELECTED> Red <OPTION> Orange <OPTION> Yellow
</SELECT>
<P><INPUT TYPE="button" VALUE="Display hidden value" NAME="button2"
   onClick="alert('Last object clicked: ' + document.myForm.hiddenObject.value)">
</FORM>
</BODY>
</HTML>



Пример


Здесь записывается значение свойства type для каждого элемента формы.

for (var i = 0; i < document.myForm.elements.length; i++) {
document.writeln("<BR>type is " + document.myForm.elements[i].type)
}



Пример


Эта функция вычисляет свойство value группы кнопок и выводит его в окне msgWindow:

function valueGetter() {
   var msgWindow=window.open("")
   msgWindow.document.write("The submit button says " +
      document.valueTest.submitButton.value + "<BR>")
   msgWindow.document.write("The reset button says " +
      document.valueTest.resetButton.value + "<BR>")
   msgWindow.document.write("The hidden field says " +
      document.valueTest.hiddenField.value + "<BR>")
   msgWindow.document.close()
}

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

The submit button says Query Submit
The reset button says Reset
The hidden field says pipefish are cute.

Здесь предполагается, что кнопки были определены так:

<INPUT TYPE="submit" NAME="submitButton">
<INPUT TYPE="reset" NAME="resetButton">
<INPUT TYPE="hidden" NAME="hiddenField" VALUE="pipefish are cute.">



Пример


Следующие кнопки выполняют ту же операцию, что и кнопка Back браузера:

<P><INPUT TYPE="button" VALUE="< Go Back"
onClick="history.back()">
<P><INPUT TYPE="button" VALUE="> Go Back"
   onClick="myWindow.back()">



Пример


Здесь определяется, содержит ли history.current строку "netscape.com". Если это так, вызывается функция myFunction.

if (history.current.indexOf("netscape.com") != -1) {
myFunction(history.current)
}



Пример


Следующие кнопки выполняют ту же операцию, что и кнопка Forward браузера:

<P><INPUT TYPE="button" VALUE="< Forward"
onClick="history.forward()">
<P><INPUT TYPE="button" VALUE="> Forward"
   onClick="myWindow.forward()">



Пример


Здесь определяется, содержит ли history.previous строку "NETSCAPE.COM". Если да - вызывается функция myFunction.

if (history.previous.indexOf("NETSCAPE.COM") != -1) {
myFunction(history.previous)
}



Пример


Эта функция выводит значение свойства border изображения, если это значение не равно 0.

function checkBorder(theImage) {
if (theImage.border==0) {
      alert('The image has no border!')
   }
   else alert('The image's border is ' + theImage.border)
}



Пример


Здесь выводится изображение и три радио-кнопки. Пользователь может щёлкать радио-кнопки для выбора изображения для вывода. Щелчок по другой кнопке позволяет пользователю увидеть текущее значение свойства complete.

<B>Choose an image:</B>
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image1" CHECKED
onClick="document.images[0].src='f15e.gif'">F-15 Eagle
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image2"
   onClick="document.images[0].src='f15e2.gif'">F-15 Eagle 2
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image3"
   onClick="document.images[0].src='ah64.gif'">AH-64 Apache <BR><INPUT TYPE="button" VALUE="Is the image completely loaded?"
   onClick="alert('The value of the complete property is '
      + document.images[0].complete)">
<BR>
<IMG NAME="aircraft" SRC="f15e.gif" ALIGN="left" VSPACE="10"><BR>



Пример


Следующая функция выводит значения свойств height, width, hspace и vspace изображения.

function showImageSize(theImage) {
alert('height=' + theImage.height+
      '; width=' + theImage.width +
      '; hspace=' + theImage.hspace +
      '; vspace=' + theImage.vspace)
}



Пример


Здесь выводится изображение и три кнопки. Пользователь может щёлкать радио-кнопки для выбора выводимого изображения. Каждое изображение также использует свойство lowsrc для вывода изображения с низким разрешением.

<SCRIPT>
function displayImage(lowRes,highRes) {
document.images[0].lowsrc=lowRes
   document.images[0].src=highRes
}
</SCRIPT> <FORM NAME="imageForm">
<B>Choose an image:</B>
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image1" CHECKED
   onClick="displayImage('f15el.gif','f15e.gif')">F-15 Eagle
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image2"
   onClick="displayImage('f15e2l.gif','f15e2.gif')">F-15 Eagle 2
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image3"
   onClick="displayImage('ah64l.gif','ah64.gif')">AH-64 Apache <BR>
<IMG NAME="aircraft" SRC="f15e.gif" LOWSRC="f15el.gif" ALIGN="left" VSPACE="10"><BR>
</FORM>



Пример


Здесь x это объект JavaClass, ссылающийся на java.awt.Font. Поскольку BOLD является static-полем (свойством) класса Font, оно является также свойством объекта JavaClass.

x = java.awt.Font
myFont = x("helv",x.BOLD,10) // создаёт объект Font

В этом примере пропущено ключевое слово Packages и использован синоним java, поскольку класс Font находится в пакете java.



Пример


Предположим, корпорация Redwood использует пакет Java redwood для хранения различных Java-классов, реализуемых ею. Следующий код создаёт JavaPackage red:

var red = Packages.redwood



Пример


Здесь специфицируется, что ответы на форму musicInfo отображаются в окне msgWindow:

document.musicInfo.target="msgWindow"



Пример


Здесь оператор window.open создаёт окно newWindow и загружает в него специфицированный URL. Операторы document.write выводят свойства newWindow.location в окне msgWindow.

newWindow=window.open
("http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object")msgWindow.document.write("newWindow.location.href = " +
   newWindow.location.href + "<P>")
msgWindow.document.write("newWindow.location.hash = " +
   newWindow.location.hash + "<P>")
msgWindow.document.close()

Этот пример даст на выходе:

newWindow.location.href =
   http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object
newWindow.location.hash = #checkbox_object



Пример


Здесь оператор window.open создаёт окно newWindow и загружает в него специфицированный URL. Операторы document.write отображают свойства newWindow.location в окне msgWindow.

newWindow=window.open
("http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object") msgWindow.document.write("newWindow.location.href = " +
   newWindow.location.href + "<P>")
msgWindow.document.write("newWindow.location.host = " +
   newWindow.location.host + "<P>")
msgWindow.document.close()

Этот пример даст на выходе:

newWindow.location.href =
   http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object
newWindow.location.host = home.netscape.com



Пример


В этом примере оператор window.open создаёт окно newWindow и загружает в него специфицированный URL. Оператор document.write отображает все свойства newWindow.location в окне msgWindow.

newWindow=window.open
("http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object")msgWindow.document.write("newWindow.location.href = " +
   newWindow.location.href + "<P>")
msgWindow.document.write("newWindow.location.protocol = " +
   newWindow.location.protocol + "<P>")
msgWindow.document.write("newWindow.location.host = " +
   newWindow.location.host + "<P>")
msgWindow.document.write("newWindow.location.hostName = " +
   newWindow.location.hostName + "<P>")
msgWindow.document.write("newWindow.location.port = " +
   newWindow.location.port + "<P>")
msgWindow.document.write("newWindow.location.pathname = " +
   newWindow.location.pathname + "<P>")
msgWindow.document.write("newWindow.location.hash = " +
   newWindow.location.hash + "<P>")
msgWindow.document.write("newWindow.location.search = " +
   newWindow.location.search + "<P>")
msgWindow.document.close()

Этот пример даст на выходе:

newWindow.location.href =
   http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object
newWindow.location.protocol = http:
newWindow.location.host = home.netscape.com
newWindow.location.hostName = home.netscape.com
newWindow.location.port =
newWindow.location.pathname =
   /comprod/products/navigator/version_2.0/script/
   script_info/objects.html
newWindow.location.hash = #checkbox_object
newWindow.location.search =



Пример


В этом примере оператор window.open создаёт окно newWindow и загружает в него специфицированный URL. Операторы document.write выводят свойства newWindow.location в окне msgWindow.

newWindow=window.open
("http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object")msgWindow.document.write("newWindow.location.href = " +
   newWindow.location.href + "<P>")
msgWindow.document.write("newWindow.location.port = " +
   newWindow.location.port + "<P>")
msgWindow.document.close()

Этот пример даст на выходе:

newWindow.location.href =
   http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object
newWindow.location.port =



Пример


В этом примере оператор window.open создаёт окно newWindow и загружает в него специфицированный URL. Операторы document.write отображают свойства newWindow.location в окне msgWindow.

newWindow=window.open
("http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object")msgWindow.document.write("newWindow.location.href = " +
   newWindow.location.href + "<P>")
msgWindow.document.write("newWindow.location.protocol = " +
   newWindow.location.protocol + "<P>")
msgWindow.document.close()

Этот пример даст на выходе:

newWindow.location.href =
   http://home.netscape.com/comprod/products/navigator/
   version_2.0/script/script_info/objects.html#checkbox_object
newWindow.location.protocol = http:



Пример


С этом примере выводятся рисунок и три радио-кнопки. Пользователь может щёлкнуть радио-кнопки для выбора рисунка для отображения. Щелчок по другой кнопке даёт пользователю возможность перезагрузить документ.

<SCRIPT>
function displayImage(theImage) {
   document.images[0].src=theImage
}
</SCRIPT><FORM NAME="imageForm">
<B>Choose an image:</B>
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image1" CHECKED
   onClick="displayImage('seaotter.gif')">Sea otter
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image2"
   onClick="displayImage('orca.gif')">Killer whale
<BR><INPUT TYPE="radio" NAME="imageChoice" VALUE="image3"
   onClick="displayImage('humpback.gif')">Humpback whale<BR>
<IMG NAME="marineMammal" SRC="seaotter.gif" ALIGN="left" VSPACE="10"><P><INPUT TYPE="button" VALUE="Click here to reload"
   onClick="window.location.reload()">
</FORM>



Пример


В этом примере пользователь может выбрать из нескольких каталогов. Выводятся два набора радио-кнопок, щёлкая которые пользователь выбирает время года и категорию, например, каталог Spring/Summer Clothing или каталог Fall/Winter Home & Garden. Если пользователь щёлкает кнопку Go, функция displayCatalog выполняет метод replace, замещая текущий URL на URL, соответствующий выбранному каталогу. После вызова displayCatalog пользователь не может перейти к предыдущему URL (списку каталогов) путём использования кнопки Back браузера.

<SCRIPT>
function displayCatalog() {
   var seaName=""
   var catName=""   for (var i=0; i < document.catalogForm.season.length; i++) {
      if (document.catalogForm.season[i].checked) {
         seaName=document.catalogForm.season[i].value
         i=document.catalogForm.season.length
      }
   }   for (var i in document.catalogForm.category) {
      if (document.catalogForm.category[i].checked) {
         catName=document.catalogForm.category[i].value
         i=document.catalogForm.category.length
      }
   }
   fileName=seaName + catName + ".html"
   location.replace(fileName)
}
</SCRIPT> <FORM NAME="catalogForm">
<B>Which catalog do you want to see?</B> <P><B>Season</B>
<BR><INPUT TYPE="radio" NAME="season" VALUE="q1" CHECKED>Spring/Summer
<BR><INPUT TYPE="radio" NAME="season" VALUE="q3">Fall/Winter <P><B>Category</B>
<BR><INPUT TYPE="radio" NAME="category" VALUE="clo" CHECKED>Clothing
<BR><INPUT TYPE="radio" NAME="category" VALUE="lin">Linens
<BR><INPUT TYPE="radio" NAME="category" VALUE="hom">Home & Garden<P><INPUT TYPE="button" VALUE="Go" onClick="displayCatalog()">
</FORM>



Пример


В этом примере оператор window.open создаёт окно newWindow и загружает в него специфицированный URL. Операторы document.write выводят свойства newWindow.location в окне msgWindow.

newWindow=window.open
("http://guide-p.infoseek.com/WW/NS/Titles?qt=RFC+1738+&col=WW") msgWindow.document.write("newWindow.location.href = " +
   newWindow.location.href + "<P>")
msgWindow.document.close()
msgWindow.document.write("newWindow.location.search = " +
   newWindow.location.search + "<P>")
msgWindow.document.close()

Этот пример даст на выходе:

newWindow.location.href =
   http://guide-p.infoseek.com/WW/NS/Titles?qt=RFC+1738+&col=WW
newWindow.location.search = ?qt=RFC+1738+&col=WW



Пример


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

function getAbs(x) {
return Math.abs(x)
}



Пример


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

function getAcos(x) {
return Math.acos(x)
}

Если Вы передаёте -1 в getAcos, он возвращает 3.141592653589793; если передаёте 2, возвращает NaN, поскольку 2 находится вне диапазона.



Пример


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

function getAsin(x) {
return Math.asin(x)
}

Если Вы передаёте в getAsin значение 1, метод возвращает 1.570796326794897 (pi/2); Если Вы передаёте 2, возвращает NaN, поскольку 2 находится вне диапазона.



Пример


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

function getAtan(x) {
return Math.atan(x)
}

Если Вы передаёте в getAtan значение 1, метод возвращает 0.7853981633974483; Если Вы передаёте .5, возвращает 0.4636476090008061.



Пример


Эта функция возвращает угол полярных координат:

function getAtan2(x,y) {
return Math.atan2(x,y)
}

Если Вы передаёте в getAtan2 значения (90,15), он возвращает 1.4056476493802699; Если Вы передаёте (15,90), возвращает 0.16514867741462683.



Пример


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

function getCeil(x) {
return Math.ceil(x)
}

Если Вы передаёте в getCeil 45.95 , он возвращает 46; Если Вы передаёте -45.95, возвращает -45.



Пример


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

function getCos(x) {
return Math.cos(x)
}

Если x равен 2*Math.PI, getCos возвращает 1; если x равен Math.PI, метод getCos возвращает -1.



Пример


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

function getEuler() {
return Math.E
}



Пример


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

function getExp(x) {
return Math.exp(x)
}

Если Вы передаёте в getExp значение 1, он возвращает 2.718281828459045.



Пример


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

function getFloor(x) {
return Math.floor(x)
}

Если Вы передаёте 45.95 в getFloor, он возвращает 45; Если передаёте -45.95, возвращает -46.



Пример


Эта функция возвращает натуральный log 10:

function getNatLog10() {
return Math.LN10
}



Пример


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

function getNatLog2() {
return Math.LN2
}



Пример


Эта функция возвращает натуральный логарифм/natural log переменной x:

function getLog(x) {
return Math.log(x)
}

Если Вы передаёте в getLog значение 10, он возвращает 2.302585092994046; если передаёте 0, возвращает  -Infinity; если передаёте -1, возвращает NaN, поскольку -1 находится вне диапазона.



Пример


Эта функция возвращает базу 10 логарифма E:

function getLog10e() {
return Math.LOG10E
}



Пример


Эта функция возвращает базу 2 логарифма E:

function getLog2e() {
return Math.LOG2E
}



Пример


Следующая функция вычисляет переменные x и y:

function getMax(x,y) {
return Math.max(x,y)
}

Если Вы передаёте в getMax значения 10 и 20, он возвращает 20; если передаёте -10 и -20, возвращает -10.



Пример


Эта функция вычисляет переменные x и y:

function getMin(x,y) {
return Math.min(x,y)
}

Если Вы передаёте в getMin значения 10 и 20, он возвращает 10; если передаёте -10 и -20, возвращает -20.



Пример


Эта функция возвращает значение pi:

function getPi() {
return Math.PI
}



Пример


function raisePower(x,y) {
return Math.pow(x,y)
}

Если x равен 7 и y равен 2, raisePower возвращает 49 (7 в степени 2).



Пример


//Возвращает случайное число в диапазоне от 0 до 1.
function getRandom() {
return Math.random()
}



Пример


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

function getSine(x) {
return Math.sin(x)
}

Если Вы передаёте в getSine значение Math.PI/2, он возвращает 1.



Пример


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

function getRoot(x) {
return Math.sqrt(x)
}

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



Пример


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

function getRoot1_2() {
return Math.SQRT1_2
}



Пример


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

function getRoot2() {
   return Math.SQRT2
}



Пример


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

function getTan(x) {
return Math.tan(x)
}



Пример


выполняется функция function1, если Java включён; иначе выполняется function2.

if (navigator.javaEnabled()) {
function1()
}
else function2()



Пример


Этот код обновляет массив и перезагружает открытые документы, содержащие внедрённые объекты:

navigator.plugins.refresh(true)

См. также примеры для объекта Plugin.



Пример


Перемножение двух числовых значений. Если результат меньше или равен MAX_VALUE, вызывается функция func1; иначе вызывается функция func2.

if (num1 * num2 <= Number.MAX_VALUE)
func1()
else
   func2()



Пример


Производится деление двух числовых значений. Если результат больше или равен MIN_VALUE, вызывается функция func1; иначе вызывается функция func2.

if (num1 / num2 >= Number.MIN_VALUE)
func1()
else
   func2()



Пример


Здесь, если month имеет значение больше 12, ему присваивается NaN и выводится сообщение с указанием правильных значений.

var month = 13
if (month < 1 || month > 12) {
month = Number.NaN
   alert("Month must be between 1 and 12.")
}



Пример


Переменной smallNumber присваивается значение, которое меньше минимального значения. Если оператор if выполняется, smallNumber имеет значение "-Infinity", поэтому вызывается функция func1.

var smallNumber = -Number.MAX_VALUE*10
if (smallNumber == Number.NEGATIVE_INFINITY)
func1()
else
   func2()



Пример


Переменной bigNumber присваивается значение, которое больше максимального значения. Если выполняется оператор if, bigNumber имеет значение "Infinity", поэтому вызывается функция func1.

var bigNumber = Number.MAX_VALUE * 10
if (bigNumber == Number.POSITIVE_INFINITY)
func1()
else
   func2()



Пример


<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 = 4o.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



Пример


Создаётся два Select-объекта, один с и другой без атрибута MULTIPLE. Никакие опции этих объектов первоначально не определены. Когда пользователь щёлкает кнопку, ассоциированную с Select-объектом, функция populate создаёт 4 опции для Select-объекта и выбирает первую опцию.

<SCRIPT>
function populate(inForm) {
   colorArray = new Array("Red", "Blue", "Yellow", "Green")   var option0 = new Option("Red", "color_red")
   var option1 = new Option("Blue", "color_blue")
   var option2 = new Option("Yellow", "color_yellow")
   var option3 = new Option("Green", "color_green")   for (var i=0; i < 4; i++) {
      eval("inForm.selectTest.options[i]=option" + i)
      if (i==0) {
         inForm.selectTest.options[i].selected=true
      }
   }   history.go(0)
}
</SCRIPT><H3>Select Option() constructor</H3>
<FORM>
<SELECT NAME="selectTest"></SELECT><P>
<INPUT TYPE="button" VALUE="Populate Select List" onClick="populate(this.form)">
<P>
</FORM><HR>
<H3>Select-Multiple Option() constructor</H3>
<FORM>
<SELECT NAME="selectTest" multiple></SELECT><P>
<INPUT TYPE="button" VALUE="Populate Select List" onClick="populate(this.form)">
</FORM>



Пример


Здесь функция restoreDefault возвращает объект musicType Select в состояние по умолчанию. Цикл for использует массив options для вычисления каждой опции Select-объекта. Оператор if устанавливает свойство selected, если defaultSelected имеет значение true.

function restoreDefault() {
for (var i = 0; i < document.musicForm.musicType.length; i++) {
      if (document.musicForm.musicType.options[i].defaultSelected == true) {
         document.musicForm.musicType.options[i].selected=true
      }
   }
}

В предыдущем примере предполагается, что Select-объект определён примерно так:

<SELECT NAME="musicType">
   <OPTION SELECTED> R&B
   <OPTION> Jazz
   <OPTION> Blues
   <OPTION> New Age
</SELECT>



Пример


Здесь функция getChoice возвращает значение свойства index выбранной опции. Цикл for вычисляет каждую опцию Select-объекта musicType. Оператор if находит выбранную опцию.

function getChoice() {
for (var i = 0; i < document.musicForm.musicType.length; i++) {
      if (document.musicForm.musicType.options[i].selected == true) {
         return document.musicForm.musicType.options[i].index
      }
   }
   return null
}

Предполагается, что Select-объект таков:

<SELECT NAME="musicType">
   <OPTION SELECTED> R&B
   <OPTION> Jazz
   <OPTION> Blues
   <OPTION> New Age
</SELECT>

Обратите внимание, что можно также определить индекс выбранной опции этого примера путём использования document.musicForm.musicType.selectedIndex.



Пример


Следующий код получает доступ к конструктору класса CorbaObject в пакете myCompany из кода JavaScript:

var theObject = new Packages.myCompany.CorbaObject()

Здесь свойство className имеет значение myCompany.CorbaObject, полное квалифицированное имя класса CorbaObject.



Пример


Создаётся Password-объект без значения по умолчанию:

<B>Password:</B>
<INPUT TYPE="password" NAME="password" VALUE="" SIZE=25>



Пример


Здесь убирается фокус с password-элемента userPass:

userPass.blur()

Здесь предполагается, что password определён так:

<INPUT TYPE="password" NAME="userPass">



Пример


Здесь функция checkPassword подтверждает ввод пользователем верного пароля. Если пароль неправильный, метод focus возвращает фокус Password-объекту, а метод select выделяет его, чтобы пользователь мог повторно ввести пароль.

function checkPassword(userPass) {
if (badPassword) {
      alert("Please enter your password again.")
      userPass.focus()
      userPass.select()
   }
}

Здесь предполагается, что Password-объект определён так:

<INPUT TYPE="password" NAME="userPass">



Пример


Здесь записывается значение свойства type каждого элемента формы.

for (var i = 0; i < document.form1.elements.length; i++) {
document.writeln("<BR>type is " + document.form1.elements[i].type)
}



Пример


Проверяется массив радио-кнопок musicType на форме musicForm с целью определить, какая кнопка выбрана. Атрибут VALUE выбранной кнопки присваивается переменной checkedButton.

function stateChecker() {
var checkedButton = ""
   for (var i in document.musicForm.musicType) {
      if (document.musicForm.musicType[i].checked=="1") {
         checkedButton=document.musicForm.musicType[i].value
      }
   }
}



Пример


Здесь массив радио-кнопок musicType на форме musicForm устанавливается в статус выбора по умолчанию:

function radioResetter() {
var i=""
   for (i in document.musicForm.musicType) {
      if (document.musicForm.musicType[i].defaultChecked==true) {
         document.musicForm.musicType[i].checked=true
      }
   }
}



Пример


Здесь функция valueGetter использует цикл for для итерации по массиву элементов на форме valueTest. Окно msgWindow отображает имена всех элементов формы:

newWindow=window.open("http://home.netscape.com")function valueGetter() {
var msgWindow=window.open("")
   for (var i = 0; i < newWindow.document.valueTest.elements.length; i++) {
      msgWindow.document.write(newWindow.document.valueTest.elements[i].name + "<BR>")
   }
}