Флаги в функциях JavaScript
В функциях можно использовать флаги
в неявном виде с помощью инструкции
return
. Давайте посмотрим,
как это делается. Пусть у нас есть
следующая функция, проверяющая,
что все элементы массива положительные
числа:
function isPositive(arr) {
let flag = true;
for (let elem of arr) {
if (elem < 0) {
flag = false;
}
}
return flag;
}
Давайте перепишем код функции с помощью неявного использования флагов:
function isPositive(arr) {
for (let elem of arr) {
if (elem < 0) {
return false;
}
}
return true;
}
Как это работает: если в массиве найдется
нужный элемент - мы выйдем из функции
(и из цикла тоже) с помощью return
.
Но если в массиве не найдется нужный элемент
- выхода из функции не произойдет и выполнение
дойдет до команды return true
. И
получится, что функция вернет true
в знак того, что в массиве все элементы
положительные.
Сделайте функцию, которая параметром будет принимать массив с числами, и проверять, что все элементы в этом массиве являются четными числами.
Сделайте функцию, которая параметром будет принимать число и проверять, что все цифры это числа являются нечетными.
Сделайте функцию, которая параметром будет принимать массив и проверять, есть ли в этом массиве два одинаковых элемента подряд.