Краткий обзор операторов JavaScript


JavaScript поддерживает компактный набор операторов, которыми вы можете пользоваться. JavaScript сoдержит следующие операторы:

Здесь описывается краткий обзор каждого оператора. Оператор производит действие над одним или несколькими операндами или переменными. Операторы делятся на две основные группы: унарные и бинарные. Бинарные операторы требуют двух операндов, а унарные имеют дело только с одним операндом.

Условный оператор

Условные операторы позволяют вам выполнять некоторые действия, основанные на логическом условии. Вы определяете для проверки условие и команды, которые выполняются, если условие истинно. JavaScript имеет один условный оператор: if.

Оператор if

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

  
if ( condition) 
{statements1} 
[else {
statements2}] 

Условие (condition) может быть любое выражение JavaScript, которое проверяется на истинну или ложь. Условные утверждения (statements) могут быть любые JavaScript утверждения, включая далее описанные условные операторы. Если утверждений несколько, то они должны быть описаны в фигурных скобках.

Пример. В следующем примере, функция checkData () возвращает истинну, если число символов в текстовом объекте - три; иначе появляется сообщение и возвращается ложь.

function checkData (){ if (document.form1.threeChar.value.length == 3) { return true} else { alert("Enter exactly three characters. " + document.form1.threeChar.value + " is not valid.") return false} }
Операторы цикла

Цикл - это набор команд, которые повторяются, пока указанное условие не выполнено. JavaScript поддерживает две формы цикла: for и while. Кроме того операторы break и continue используются вместе с циклами.

Другой оператор, for...in, выполняет утверждения несколько раз, но используется для манипулирования объектом. См. Оператор манипулирования объектом.

Оператор for

Цикл for повторяет утверждения, до тех пор пока указанное условие ложно. Цикл for JavaScript for подобен циклу for Java и традиционному циклу for языка C. Оператор for выглядит следующим образом:

  
for ([initial-expression;]
     [condition;]
     [increment-expression])
{
   statements
}

Последовательность выполнения цикла for следующия:

  1. Выражение initial-expression служит для инициализации переменной счетчика, которую можно создать с помощью опреатора var.
  2. Выражение condition вычисляется на каждой итерации цикла. Если значение выражения condition истинно, выполняются утверждения в теле цикла. Если значение выражения condition ложно, то цикл for прекращается.
  3. Выражение increment-expression используется для изменения значения переменной счетчика.

Оператор while

Оператор while повторяет цикл, пока указанное условие истинно. Оператор while выглядит следующим образом:

 
while (condition) 
{statements}
 

Если условие становится ложным, то утверждения внутри цикла прекращают выполняться.

Условия проверяется только тогда, когда утверждения в цикле были выполнены, и цикл должен повториться.

Пример 1. Следующий опрератор while повторяется, до тех пор пока n - меньше чем три.

n = 0 x = 0 while( n < 3 ) { n ++ x += n}

Каждая итерация цикла увеличивает n и прибавляет его к x. Следовательно, x и n принимают следующие значения:

После завершения третьей итерации, условие n<3 больше не истинно, поэтому цикл прекращается.

Пример 2: бесконечный цикл. Проверьте, что условие в цикле в конечном счете становится ложным; иначе цикл никогда не прекратиться. Утверждения в следующем цикле while выполняются бесконечно, потому что условие никогда не становится ложным:

while (true) { alert("Hello, world") }
Оператор break

Оператор break завершает текущий цикл while или for и передает управление программы первому оператору после цикла. Оператор break выглядит следующим образом:

  
break
 

Пример. Следующая функция имеет оператор break, который завершает цикл while, когда i равно 3, и затем возвращает значение 3 * x.

function testBreak(x) { var i = 0 while (i < 6) { if (i == 3) break i++ } return i*x}
Оператор continue

Оператор continue передает управление оператору проверки истинности условия в цикле while и оператору обновления значения счетчика в цикле for, и продолжает выполнение цикла. Оператор continue выглядит следующим образом:

  continue

Пример. Следующий пример показывает цикл while, который имеет оператор continue, который выполняется, когда значение i равно 3. Таким образом, n принемает значения 1, 3, 7, и 12.

i = 0 n = 0 while (i < 5) { i++ if (i == 3) continue n += i }
Оператор манипулирования объектом

JavaScript имеет способы управления объектами: операторы for...in, new, this и with.

Оператор for...in

Оператор for...in присваивает переменной поочередно все свойства объекта. Для каждого свойства JavaScript выполняет указанные утверждения. Оператор for...in выглядит следующим образом:

  
for (variable in object) 
{   statements 
}

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

function dump_props(obj, obj_name) { var result = "" for (var i in obj) { result += obj_name + "." + i + " = " + obj[i] + "<BR>" } result += "<HR>" return result}

Для объекта car со свойствоми make и model, result выглядел бы так:

car.make=Ford car.model=Mustang
Оператор new

Оператор new позволяет вам создавать образец определяемого пользователем типа объекта. Используйте new следующим образом:

ObjectName = new
 objectType
 (param1 
 [, param2]
  ...
 [, paramN])
 

Ключевое слово this

Используйте this, чтобы обратиться к текущему объекту. Вообще, this обращается к вызывающему объекту в методе. Используйте this следующим образом:

  
this [.propertyName]
 

Пример. Пусть функция, названная validate, проверяет правильность свойства значения объекта:

function validate(obj, lowval, hival) { if ((obj.value < lowval) || (obj.value > hival)) alert("Invalid Value!") }

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

Enter a number between 18 and 99: <INPUT TYPE = "text" NAME = "age" SIZE = 3 onChange="validate(this, 18, 99)">
Оператор with

Оператор with устанавливает объект для набора утверждений. Внутри набора утверждений любые ссылки на свойства без явного указания объекта предполагают объект по умолчанию. Оператор with выглядит следующим образом:

  
with (object)
{
    statements
} 

Комментарии

Комментарии - системы обозначений автором, чтобы объяснить, что сценарий делает. Комментарии игнорируются интерпретатором. JavaScript поддерживает комментарии Стиля java:

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

// Это - комментарий , состоящий из единственной линии. /* Это - многострочный комментарий. Он может иметь любую длину. Это вторая строка многострочного комментария. */
на предидущею на главную на следюющею
Hosted by uCoz