JavaScript: возвращает 1, если массив отсортирован в порядке возрастания, -1, если он отсортирован в порядке убывания, или 0, если он не отсортирован
Основы JavaScript (синтаксис ES6): упражнение 188 с решением
Напишите программу на JavaScript, которая будет возвращать 1, если массив отсортирован в порядке возрастания, -1, если он отсортирован в порядке убывания, или 0, если он не отсортирован.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Return 1 if the array is sorted in ascending order, -1 if it is sorted in descending order or 0 if it is not sorted</title>
</head>
<body>
</body>
</html>
Код JavaScript:
//#Source https://bit.ly/2neWfJ2
const isSorted = arr => {
let direction = -(arr[0] - arr[1]);
for (let [i, val] of arr.entries()) {
direction = !direction ? -(arr[i - 1] - arr[i]) : direction;
if (i === arr.length - 1) return !direction ? 0 : direction;
else if ((val - arr[i + 1]) * direction > 0) return 0;
}
};
console.log(isSorted([0, 1, 2, 2]));
console.log(isSorted([4, 3, 2]));
console.log(isSorted([4, 3, 5]));
Пример вывода:
1 -1 0
Иллюстрированная презентация:
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-188-1 от w3resource ( @ w3resource ) на CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу JavaScript, чтобы проверить, является ли данный аргумент строкой.
Далее: Напишите программу на JavaScript, которая будет возвращать true, если объект выглядит как Promise, иначе false.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования