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

         

С этом примере выводятся рисунок


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

в него специфицированный URL. Операторы


В этом примере оператор 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.

он возвращает 46; Если Вы


Эта функция возвращает 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.

в getFloor, он возвращает 45;


Эта функция возвращает floor-значение переменной x:
function getFloor(x) {
return Math.floor(x)
} Если Вы передаёте 45.95 в getFloor, он возвращает 45; Если передаёте -45.95, возвращает -46.

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


Эта функция возвращает натуральный log 10:
function getNatLog10() {
return Math.LN10
}

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


Эта функция возвращает натуральный log 2:
function getNatLog2() {
return Math.LN2
}

в getLog значение 10, он


Эта функция возвращает натуральный логарифм/natural log переменной x:
function getLog(x) {
return Math.log(x)
} Если Вы передаёте в getLog значение 10, он возвращает 2.302585092994046; если передаёте 0, возвращает  -Infinity; если передаёте -1, возвращает NaN, поскольку -1 находится вне диапазона.

Эта функция возвращает базу 10


Эта функция возвращает базу 10 логарифма E:
function getLog10e() {
return Math.LOG10E
}

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


Эта функция возвращает базу 2 логарифма E:
function getLog2e() {
return Math.LOG2E
}

и 20, он возвращает 20;


Следующая функция вычисляет переменные x и y:
function getMax(x,y) {
return Math.max(x,y)
} Если Вы передаёте в getMax значения 10 и 20, он возвращает 20; если передаёте -10 и -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
}

y равен 2, raisePower возвращает


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, делённую


Эта функция возвращает 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


выполняется функция 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 имеет значение больше


Здесь, если month имеет значение больше 12, ему присваивается NaN и выводится сообщение с указанием правильных значений.
var month = 13
if (month < 1 || month > 12) {
month = Number.NaN
   alert("Month must be between 1 and 12.")
}

Переменной smallNumber присваивается значение, которое


Переменной smallNumber присваивается значение, которое меньше минимального значения. Если оператор if выполняется, smallNumber имеет значение "-Infinity", поэтому вызывается функция func1.
var smallNumber = -Number.MAX_VALUE*10
if (smallNumber == Number.NEGATIVE_INFINITY)
func1()
else
   func2()

Переменной bigNumber присваивается значение, которое


Переменной 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

и другой без атрибута MULTIPLE.


Создаётся два 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 возвращает объект


Здесь функция 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 возвращает значение


Здесь функция 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.

в пакете myCompany из кода


Следующий код получает доступ к конструктору класса 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 определён


Здесь убирается фокус с password-элемента userPass:
userPass.blur() Здесь предполагается, что password определён так:
<INPUT TYPE="password" NAME="userPass">

Здесь функция checkPassword подтверждает ввод


Здесь функция 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


Здесь записывается значение свойства type каждого элемента формы.
for (var i = 0; i < document.form1.elements.length; i++) {
document.writeln("<BR>type is " + document.form1.elements[i].type)
}

кнопок musicType на форме musicForm


Проверяется массив радио- кнопок 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


Здесь массив радио- кнопок 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 использует цикл


Здесь функция 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>")
   }
}

Записывается значение свойства type каждого


Записывается значение свойства type каждого элемента формы.
for (var i = 0; i < document.form1.elements.length; i++) {
document.writeln("<BR>type is " + document.form1.elements[i].type)
}

Следующая функция вычисляет свойство value


Следующая функция вычисляет свойство value группы радио-кнопок и выводит его в окне msgWindow:
function valueGetter() {
var msgWindow=window.open("")
   for (var i = 0; i < document.valueTest.radioObj.length; i++) {
       msgWindow.document.write
          ("The value of radioObj[" + i + "] is " +
          document.valueTest.radioObj[i].value +"<BR>")
   }
   msgWindow.document.close()
} Будут выведены следующие значения:
on
on
on
on В этом примере предполагается, что кнопки были определены так:
<BR><INPUT TYPE="radio" NAME="radioObj">R&B
<BR><INPUT TYPE="radio" NAME="radioObj" CHECKED>Soul
<BR><INPUT TYPE="radio" NAME="radioObj">Rock and Roll
<BR><INPUT TYPE="radio" NAME="radioObj">Blues

Этот скрипт использует метод replace


Этот скрипт использует метод replace для переключения слов в строке. Для заменяющего текста скрипт использует значения свойств $1 и $2 глобального объекта RegExp. Обратите внимание, что имя объекта RegExp не предшествует свойствам $, когда они передаются как второй аргумент методу replace.
<SCRIPT LANGUAGE="JavaScript1.2">
re = /(\w+)\s(\w+)/;
str = "John Smith";
newstr=str.replace(re, "$2, $1");
document.write(newstr)
</SCRIPT> This displays "Smith, John".

В этом примере пользователь вводит


В этом примере пользователь вводит имя, и скрипт выполняет совпадения относительно ввода. Затем циклически проходит по массиву, чтобы проверить, нет ли других имён, совпадающих с именем пользователя.
В скрипте предполагается, что первые зарегистрированные имена предварительно загружаются в массив A, возможно, с получением их из базы данных party.
<HTML><SCRIPT LANGUAGE="JavaScript1.2">
A = ["Frank", "Emily", "Jane", "Harry", "Nick", "Beth", "Rick",
      "Terrence", "Carol", "Ann", "Terry", "Frank", "Alice", "Rick",
      "Bill", "Tom", "Fiona", "Jane", "William", "Joan", "Beth"]function lookup() {
   firstName = /\w+/i();
   if (!firstName)
      window.alert (RegExp.input + " isn't a name!");
   else {
      count = 0;
      for (i=0; i<A.length; i++)
         if (firstName[0].toLowerCase() == A[i].toLowerCase()) count++;
      if (count ==1)
         midstring = " other has ";
      else
         midstring = " others have ";
      window.alert ("Thanks, " + count + midstring + "the same name!")
   }
}</SCRIPT>Enter your first name and then press Enter.<FORM> <INPUT TYPE:"TEXT" NAME="FirstName" onChange="lookup(this);"> </FORM></HTML>

Печатается сообщение, содержание которого зависит


Печатается сообщение, содержание которого зависит от успешности прохождения теста:
function testinput(re, str){
if (re.test(str))
      midstring = " contains ";
   else
      midstring = " does not contain ";
   document.write (str + midstring + re.source);
}

Выводится строка, отображающая строковое значение


Выводится строка, отображающая строковое значение объекта RegExp:
myExp = new RegExp("a+b+c");
alert(myExp.toString())//    выведет "/a+b+c/"

Пример myExp = new RegExp("a+b+c")


myExp = new RegExp("a+b+c");
alert(myExp.valueOf())выведет "/a+b+c/"

В этом примере функция valueGetter


В этом примере функция 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>")
   }
}

Здесь записываются значения свойства type


Здесь записываются значения свойства type каждого элемента формы.
for (var i = 0; i < document.form1.elements.length; i++) {
   document.writeln("<BR>type is " + document.form1.elements[i].type)
}

Функция создаёт строку, содержащую текущие


Функция создаёт строку, содержащую текущие свойства монитора:
function screen_properties() {
document.examples.results.value = "("+screen.width+" x
      "+screen.height+") pixels, "+
      screen.pixelDepth +" bit depth, "+
      screen.colorDepth +" bit color palette depth.";
} // end function screen_properties

Здесь функция valueGetter использует цикл


Здесь функция 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>")
   }
}

Здесь функция getSelectedIndex возвращает индекс


Здесь функция getSelectedIndex возвращает индекс выбора в объекте musicType Select:
function getSelectedIndex() {
return document.musicForm.musicType.selectedIndex
} Предполагается, что Select-объект похож на следующий:
<SELECT NAME="musicType">
   <OPTION SELECTED> R&B
   <OPTION> Jazz
   <OPTION> Blues
   <OPTION> New Age
</SELECT>

Здесь записывается значение свойства type


Здесь записывается значение свойства type каждого элемента формы.
for (var i = 0; i < document.form1.elements.length; i++) {
   document.writeln("<BR>type is " + document.form1.elements[i].type)
}

Предыдущий пример даст тот же


Открывается окно msgWindow и создаётся якорь для оглавления:
var myString="Table of Contents"
msgWindow.document.writeln(myString.anchor("contents_anchor")) Предыдущий пример даст тот же результат, что и этот HTML:
<A NAME="contents_anchor">Table of Contents</A>

Используются методы работы со строками


Используются методы работы со строками для изменения размера текста строки:
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>

Здесь используются методы работы со


Здесь используются методы работы со строками для изменения форматирования строки:
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>

Здесь используются методы работы со


Здесь используются методы работы со строками для изменения форматирования строки:
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>

Отображаются символы из различных мест


Отображаются символы из различных мест строки "Brave new world":
var anyString="Brave new world"document.writeln("The character at index 0 is " + anyString.charAt(0))
document.writeln("The character at index 1 is " + anyString.charAt(1))
document.writeln("The character at index 2 is " + anyString.charAt(2))
document.writeln("The character at index 3 is " + anyString.charAt(3))
document.writeln("The character at index 4 is " + anyString.charAt(4)) На выходе будет:
The character at index 0 is B
The character at index 1 is r
The character at index 2 is a
The character at index 3 is v
The character at index 4 is e

Пример 1. Этот пример возвращает


Пример 1. Этот пример возвращает 65, Unicode-значение латинской заглавной A.
"ABC".charCodeAt(0) // возвращает 65 Пример 2. Создаётся событие для симуляции нажатия клавиши. Событие KeyPress имеет свойство which, которое представляет ASCII-значение нажатой клавиши. Если Вам известна буква, число или символ, Вы можете использовать charCodeAt для предоставления ASCII-значения в свойство which.
//создаётся Еvent-объект с нужными значениями свойств
ev = new Event()
ev.type = KeyPress
ev.layerX = 150
//присваиваются значения свойствам layerY, pageX, pageY, screenX и screenY
...
//присваивается ASCII-значение свойству which
ev.which = "v".charCodeAt(0)
//assign modifier property
ev.modifiers = <FONT COLOR="#FF0080">How do I do this?</FONT>

a beautiful


s1="Oh "
s2="what a beautiful "
s3="mornin'."
s4=s1.concat(s2,s3) // возвращает "Oh what a beautiful mornin'."

Метод fixed используется для изменения


Метод fixed используется для изменения форматирования строки:
var worldString="Hello, world"
document.write(worldString.fixed()) Предыдущий пример даст тот же вывод, что и следующий HTML:
<TT>Hello, world</TT>

Метод fontcolor используется для изменения


Метод fontcolor используется для изменения цвета строки:
var worldString="Hello, world"document.write(worldString.fontcolor("maroon") +
" is maroon in this line")
document.write("<P>" + worldString.fontcolor("salmon") +
   " is salmon in this line")
document.write("<P>" + worldString.fontcolor("red") +
   " is red in this line")document.write("<P>" + worldString.fontcolor("8000") +
   " is maroon in hexadecimal in this line")
document.write("<P>" + worldString.fontcolor("FA8072") +
   " is salmon in hexadecimal in this line")
document.write("<P>" + worldString.fontcolor("FF00") +
   " is red in hexadecimal in this line") Предыдущий пример даст тот же вывод, что и следующий  HTML:
<FONT COLOR="maroon">Hello, world</FONT> is maroon in this line
<P><FONT COLOR="salmon">Hello, world</FONT> is salmon in this line
<P><FONT COLOR="red">Hello, world</FONT> is red in this line<FONT COLOR="8000">Hello, world</FONT>
is maroon in hexadecimal in this line
<P><FONT COLOR="FA8072">Hello, world</FONT>
is salmon in hexadecimal in this line
<P><FONT COLOR="FF00">Hello, world</FONT>
is red in hexadecimal in this line

Метод string изменяет размер шрифта


Метод string изменяет размер шрифта строки:
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>

Здесь используются методы работы со


Здесь используются методы работы со строками для изменения форматирования строки:
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>

и lastIndexOf используются для локализации


Здесь методы indexOf и lastIndexOf используются для локализации значений в строке "Brave new world."
var anyString="Brave new world"// Выводит 8
document.write("<P>The index of the first w from the beginning is " +
   anyString.indexOf("w"))
// Выводит 10
document.write("<P>The index of the first w from the end is " +
   anyString.lastIndexOf("w"))
// Выводит 6
document.write("<P>The index of 'new' from the beginning is " +
   anyString.indexOf("new"))
// Выводит 6
document.write("<P>The index of 'new' from the end is " +
   anyString.lastIndexOf("new"))

The string length is


Будет выведена цифра 8 в диалоговом окне Alert:
var x="Netscape"
alert(" The string length is " + x.length)

выводится как гиперссылка, которая переводит


Слово "Netscape" выводится как гиперссылка, которая переводит пользователя на домашнюю страницу Netscape:
var hotText="Netscape"
var URL="http://home.netscape.com"document.write("Click to return to " + hotText.link(URL)) Предыдущий пример даст тот же вывод, что и следующий HTML:
Click to return to <A HREF="http://home.netscape.com">Netscape</A>

Печатается сообщение, содержание которого зависит


Печатается сообщение, содержание которого зависит от успешности прохождения теста.
function testinput(re, str){
if (str.search(re) != -1)
      midstring = " contains ";
   else
      midstring = " does not contain ";
   document.write (str + midstring + re.source);
}

Здесь slice используется для создания


Здесь slice используется для создания новой строки.
<SCRIPT>
str1="The morning is upon us. "
str2=str1.slice(3,-5)
document.write(str2)
</SCRIPT> Будет напечатано:
morning is upon

Предыдущий пример даст тот же


Используются string-методы для изменения размера строки:
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>

Здесь используются методы работы со


Здесь используются методы работы со строками для изменения форматирования строки:
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>

и sup используются для форматирования


Методы 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.

Рассмотрим такой


Рассмотрим такой скрипт:
<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):

и sup использованы для форматирования


Методы 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.

Выводится строка


Выводится строка "alphabet":
var upperText="ALPHABET"
document.write(upperText.toLowerCase())

Отображается строковое значение


Отображается строковое значение String-объекта:
x = new String("Hello world");
alert(x.toString())// Выводит "Hello world"

Выводится строка


Выводится строка "ALPHABET":
var lowerText="alphabet"
document.write(lowerText.toUpperCase())

x = new String("Hello world")


x = new String("Hello world");
alert(x.valueOf())// Выводит "Hello world"

Создаётся объект Submit по имени


Создаётся объект Submit по имени submitButton. Текст "Done" отображается на поверхности кнопки.
<INPUT TYPE="submit" NAME="submitButton" VALUE="Done"> См. примеры для Form.

В этом примере показана форма


В этом примере показана форма с несколькими элементами. Если пользователь щёлкает на кнопке button2, функция showElements выводит alert-диалог с именами всех элементов формы myForm.
<SCRIPT>
function showElements(theForm) {
str = "Form Elements of form " + theForm.name + ": \n "
   for (i = 0; i < theForm.length; i++)
      str += theForm.elements[i].name + "\n"
   alert(str)
}
</SCRIPT>
<FORM NAME="myForm">
Form name:<INPUT TYPE="text" NAME="text1" VALUE="Beluga">
<P>
<INPUT NAME="button1" TYPE="button" VALUE="Show Form Name"
   onClick="this.form.text1.value=this.form.name">
<INPUT NAME="button2" TYPE="submit" VALUE="Show Form Elements"
   onClick="showElements(this.form)">
</FORM> Диалог alert выведет следующий текст:
Form Elements of form myForm:
text1
button1
button2

Здесь функция valueGetter использует цикл


Здесь функция 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>")
   }
}

Записываются значения свойства type каждого


Записываются значения свойства type каждого элемента формы.
for (var i = 0; i < document.form1.elements.length; i++) {
document.writeln("<BR>type is " + document.form1.elements[i].type)
}

Следующая функция вычисляет свойство value


Следующая функция вычисляет свойство value группы кнопок и выводит его в окне msgWindow:
function valueGetter() {
var msgWindow=window.open("")
   msgWindow.document.write("submitButton.value is " +
      document.valueTest.submitButton.value + "<BR>")
   msgWindow.document.write("resetButton.value is " +
      document.valueTest.resetButton.value + "<BR>")
   msgWindow.document.write("helpButton.value is " +
      document.valueTest.helpButton.value + "<BR>")
   msgWindow.document.close()
} Будут выведены следующие значения:
Query Submit
Reset
Help Предполагается, что кнопки были определены так:
<INPUT TYPE="submit" NAME="submitButton">
<INPUT TYPE="reset" NAME="resetButton">
<INPUT TYPE="button" NAME="helpButton" VALUE="Help">

что текстовый элемент определён


Убирается фокус с текстового элемента userText:
userText.blur() Предполагается, что текстовый элемент определён так:
<INPUT TYPE="text" NAME="userText">

Функция вычисляет свойства defaultValue объекта


Функция вычисляет свойства defaultValue объекта на форме surfCity и отображает значения в окне msgWindow:
function defaultGetter() {
msgWindow=window.open("")
   msgWindow.document.write("hidden.defaultValue is " +
      document.surfCity.hiddenObj.defaultValue + "<BR>")
   msgWindow.document.write("password.defaultValue is " +
      document.surfCity.passwordObj.defaultValue + "<BR>")
   msgWindow.document.write("text.defaultValue is " +
      document.surfCity.textObj.defaultValue + "<BR>")
   msgWindow.document.write("textarea.defaultValue is " +
      document.surfCity.textareaObj.defaultValue + "<BR>")
   msgWindow.document.close()
}

Здесь функция valueGetter использует цикл


Здесь функция 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>")
   }
}

Обработчик onClick передаёт фокус текстовому


Обработчик onClick передаёт фокус текстовому полю и выделяет весь текст :
<FORM NAME="myForm">
<B>Last name: </B><INPUT TYPE="text" NAME="lastName" SIZE=20 VALUE="Pigman">
<BR><B>First name: </B><INPUT TYPE="text" NAME="firstName" SIZE=20 VALUE="Victoria">
<BR><BR>
<INPUT TYPE="button" VALUE="Change last name"
onClick="this.form.lastName.select();this.form.lastName.focus();">
</FORM>

Записываются значения свойства type каждого


Записываются значения свойства type каждого элемента формы.
for (var i = 0; i < document.form1.elements.length; i++) {
document.writeln("<BR>type is " + document.form1.elements[i].type)
}

Следующая функция вычисляет свойства value


Следующая функция вычисляет свойства value группы кнопок и отображает их в окне msgWindow:
function valueGetter() {
var msgWindow=window.open("")
   msgWindow.document.write("submitButton.value is " +
      document.valueTest.submitButton.value + "<BR>")
   msgWindow.document.write("resetButton.value is " +
      document.valueTest.resetButton.value + "<BR>")
   msgWindow.document.write("myText.value is " +
      document.valueTest.myText.value + "<BR>")
   msgWindow.document.close()
} Пример выведет:
submitButton.value is Query Submit
resetButton.value is Reset
myText.value is Stonefish are dangerous. Предполагается, что кнопки определены так:
<INPUT TYPE="submit" NAME="submitButton">
<INPUT TYPE="reset" NAME="resetButton">
<INPUT TYPE="text" NAME="myText" VALUE="Stonefish are dangerous.">

Initial text for the text


Убирается фокус с textarea-элемента userText:
userText.blur() Предполагается что textarea определён так:
<TEXTAREA NAME="userText">
Initial text for the text area.
</TEXTAREA>

Следующая функция вычисляет свойство defaultValue


Следующая функция вычисляет свойство defaultValue объектов на форме surfCity и выводит эти значения в окне msgWindow:
function defaultGetter() {
msgWindow=window.open("")
   msgWindow.document.write("hidden.defaultValue is " +
      document.surfCity.hiddenObj.defaultValue + "<BR>")
   msgWindow.document.write("password.defaultValue is " +
      document.surfCity.passwordObj.defaultValue + "<BR>")
   msgWindow.document.write("text.defaultValue is " +
      document.surfCity.textObj.defaultValue + "<BR>")
   msgWindow.document.write("textarea.defaultValue is " +
      document.surfCity.textareaObj.defaultValue + "<BR>")
   msgWindow.document.close()
}

Здесь функция valueGetter использует цикл


Здесь функция 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>")
   }
}

Здесь обработчик onClick используется для


Здесь обработчик onClick используется для передачи фокуса полю textarea и выделения этого поля для последующего его изменения:
<FORM NAME="myForm">
<B>Last name: </B><INPUT TYPE="text" NAME="lastName" SIZE=20 VALUE="Pigman">
<BR><B>First name: </B><INPUT TYPE="text" NAME="firstName" SIZE=20 VALUE="Victoria">
<BR><B>Описание:</B>
<BR><TEXTAREA NAME="desc" ROWS=3 COLS=40>An avid scuba diver.</TEXTAREA>
<BR><BR>
<INPUT TYPE="button" VALUE="Change description"
onClick="this.form.desc.select();this.form.desc.focus();">
</FORM>