Условные операторы, операторы циклов, переходы и метки. — КиберПедия 

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

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

Условные операторы, операторы циклов, переходы и метки.

2017-06-29 238
Условные операторы, операторы циклов, переходы и метки. 0.00 из 5.00 0 оценок
Заказать работу

 

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

Оператор if

Оператор if («если») получает условие, вычисляет его, и если результат – true, то выполняет команду. Если нужно выполнить более одной команды – они оформляются блоком кода в фигурных скобках. Рекомендуется использовать фигурные скобки всегда, даже когда команда одна. Это улучшает читаемость кода. Необязательный блок else («иначе») выполняется, если условие неверно.

Оператор вопросительный знак „?“

Он состоит из трех частей: условие? значение1: значение2;

Проверяется условие, затем если оно верно – возвращается значение1, если неверно – значение2, например:

access = (age > 14)? true: false;

 

Конструкция switch

switch(x) {

case 'value1': // if (x === 'value1')

...

[break]

 

case 'value2': // if (x === 'value2')

...

[break]

 

default:

...

[break]

}

Переменная x проверяется на строгое равенство первому значению value1, затем второму value2 и так далее. Если соответствие установлено – switch начинает выполняться от соответствующей директивы case и далее, до ближайшего break (или до конца switch). Если ни один case не совпал – выполняется (если есть) вариант default.

Операторы циклов

Цикл while

Цикл while имеет вид:

while (условие) {

// тело цикла

}

 

Пока условие верно – выполняется код из тела цикла.

 

Цикл do..while

Проверку условия можно поставить под телом цикла, используя специальный синтаксис do..while:

 

do {

// тело цикла

} while (условие);

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

Цикл for

 

const arr = [1, 2, 3, 4];

for (let i = 0, n = arr.length; i < n; n--, i++)

{

 

}

 

for..in – для перебора свойств объекта

 

const obj = {

a: 1,

b: 2,

};

for (const key in obj)

{

 

}

 

for..of (ES2015)

 

Итерируемые или, иными словами, «перебираемые» объекты – это те, содержимое которых можно перебрать в цикле.

 

let arr = [1, 2, 3]; // массив — пример итерируемого объекта

for (let value of arr) {

alert(value); // 1, затем 2, затем 3

}

Также итерируемой является строка:

for (let char of "Привет") {

alert(char); // Выведет по одной букве: П, р, и, в, е, т

}

 

Прерывание цикла break

 

Выйти из цикла можно не только при проверке условия, но и, вообще, в любой момент. Эту возможность обеспечивает директива break.

 

Следующая итерация continue

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

Метки для break/continue

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

label:

for ()

{

for()

{

break label;

}

}

Вызов break lable ищет ближайший внешний цикл с такой меткой и переходит в его конец. Директива continue также может быть использована с меткой, в этом случае управление перепрыгнет на следующую итерацию цикла с меткой.

Варианты объявления функций в ES2015, чем они отличаются?

Стандартные способы, которые появились в ранних версиях

// Function Declaration

function sum1(a, b) {

return a + b;

};

 

// Function Expression

const sum2 = function (a, b) {

return a + b;

};

 

Основное отличие в том, что Function Declaration, создаются интерпретатором до выполнения кода. Это называется "поднятие функции", то есть функцию можно вызвать до ее объявления.

Параметры по умолчанию

Можно указывать параметры по умолчанию через равенство =, например:

function showMenu(title = "Без заголовка", width = 100, height = 200) {

alert(title + ' ' + width + ' ' + height);

}

showMenu("Меню"); // Меню 100 200

Параметр по умолчанию используется при отсутствующем аргументе или равном undefined. При передаче любого значения, кроме undefined, включая пустую строку, ноль или null, параметр считается переданным, и значение по умолчанию не используется.

Параметры по умолчанию могут быть не только значениями, но и выражениями. Например:

function sayHi(who = getCurrentUser().toUpperCase()) {

alert('Привет, ' + who);

}

function getCurrentUser() {

return 'Вася';

}

sayHi(); // Привет, ВАСЯ

Заметим, что значение выражения getCurrentUser().toUpperCase() будет вычислено, и соответствующие функции вызваны – лишь в том случае, если это необходимо, то есть когда функция вызвана без параметра.


Поделиться с друзьями:

Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

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



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.012 с.