Tech notes

Daily notes about my IT activities.

2011-09-04

Операторы JavaScript

by hackprime

Небольшая памятка по операторам JavaScript.

Оператор var

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

var x = 10;

Операторы if и else

Оператор условия.

var x = 10;
if (x == 10) {
  alert("x = 10");
} else {
  alert("x ≠ 10");
}

Операторы function и return

Оператор function служит для объявления функций. У функции могут быть название и аргументы. Оператор return определяет какое значение вернёт функция.

// функция с названием и аргументами
function sum1 (a, b) {
    return a + b;
}
var s = sum1(1, 2);

// функция с названием и без аргументов
function sum2 () {
  return 1 + 3;
}
var s = sum2();

// анонимная функция (функция без имени, записанная в переменную)
sum3 = function (a, b) {
  return a + b
};
var s = sum3(5, 7);

Оператор for

Оператор цикла, который выполняется с некоторым числом итераций, определяемым заданными выражениями. Варианты использования:

var i;
for (i = 0; i < 10; i = i + 2) {
  ...
}

Если не указывать второе выражение, то итерации будут продолжаться до тех пор, пока не произойдёт ошибки, либо пока не будет вызван оператор break.

var i;
for (i = 0; ; i = i + 2) {
  ...
}

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

var i;
for (i = 0; i < 10; ) {
  ...
}

Если не указывать выражений вообще, то цикл будет продолжаться до тех пор, пока не будет вызван оператор break.

for (;;) {
  ...
}
var objectKey;
for (objectKey in obj) {
  if (obj.hasOwnProperty(objectKey)) {
    ...
  }
}

Здесь, obj — объект по свойствам которого мы хотим проитерировать, objectKey — имя свойства объекта obj на текущей итерации.

Оператор while

Оператор цикла, который выполняется до тех пор, пока значение выражения внутри него истино.

var i = 0;
mult = 1;
while (i > 5) {
  mult = mult * i;
  i++;
}
// в результате получим произведение всех целых чисел от 1 до 5 где = 120

Цикл можно сделать бесконечным, вписав вместо выражения true, тогда остановить его можно будет только оператором break.

while (true) {
    ...
}

Оператор break

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

var numbers = new Array(1, 2, -3, -4, 5, -6);
var result = new Array();
for (index in numbers) {
  if (numbers[index] > 0) {
    result.push(number);
  } else {
    break;
  }
}
// result == [1, 2]

Оператор continue

Выполнение оператора continue внутри цикла приводит к переходу на следующую итерацию.

var numbers = new Array(1, 2, -3, -4, 5, -6);
var result = new Array();
for (index in numbers) {
  if (numbers[index] > 0) {
    result.push(number);
  } else {
    continue;
  }
}
// result == [1, 2, 5]

Оператор with

Устанавливает объект по умолчанию для набора операторов. Предположим,у нас есть объект car со свойствами color и max_speed. Если мы хотим вывести информацию о нём в переменную info, то делаем так:

var info;
info = "Цвет машины - " + car.color + ". Максимальная скорость - " + car.max_speed + ".";

Если мы применим оператор with, то код преобразиться следующим образом:

var info;
with (car) {
  info = "Цвет машины - " + color + ". Максимальная скорость - " + max_speed + ".";
}

Источники

  1. Операторы JavaScript
  2. Справочник javascript: Array