Ошибка: функция round (double precision, integer) не существует
blockquote>Решение: вам нужно добавить тип добавления, тогда он будет работать
Пример:
round(extract(second from job_end_time_t)::integer,0)
Array.max = function( array ){
return Math.max.apply( Math, array );
};
Предупреждение : поскольку максимальное количество аргументов составляет всего 65535 на некоторых виртуальных машинах , используйте цикл for, если вы не уверены, что массив настолько мал.
Рекурсивный подход к тому, как сделать это с помощью тернарных операторов
const findMax = (arr, max, i) => arr.length === i ? max :
findMax(arr, arr[i] > max ? arr[i] : max, ++i)
const arr = [5, 34, 2, 1, 6, 7, 9, 3];
const max = findMax(arr, arr[0], 0)
console.log(max);
Вы можете отсортировать массив в порядке убывания и получить первый элемент:
[267, 306, 108].sort(function(a,b){return b-a;})[0]
Вы можете использовать функцию apply для вызова Math.max :
var array = [267, 306, 108];
var largest = Math.max.apply(Math, array); // 306
Как это работает?
Используется функция apply для вызова другой функции с заданным контекстом и аргументами, предоставленными в виде массива. Функции min и max могут принимать произвольное количество входных аргументов: Math.max (val1, val2, ..., valN)
Итак, если мы вызовем:
Math.min.apply(Math, [1,2,3,4]);
Функция apply выполнится:
Math.min(1,2,3,4);
Обратите внимание, что первый параметр, контекст, не важен для этих функций, поскольку они статичны, они будут работать независимо от того, что передается в качестве контекста.