null
необязательно, можно просто писать const img = ref<HTMLImageElement>();
- значение получит тип HTMLImageElement | undefined
, что для любых практических целей ничем не отличен от HTMLImageElement | null
, а писанины меньше. :) reply.type('text/html').code(200).send(...)
const sum = ({data}) => data.reduce((a, b) => a + b, 0);
const colors = [
{ primary: '#AAAAAA', secondary: '#AAABBB' },
{ primary: '#BBBBBB', secondary: '#BBBCCC' },
{ primary: '#CCCCCC', secondary: '#CCCDDD' },
{ primary: '#DDDDDD', secondary: '#DDDEEE' },
]; // ЦВЕТА ВСЕГДА В НУЖНОМ ПОРЯДКЕ
const DATASETS = [
{
data: [1, 2, 3, 4, 5],
},
{
data: [2, 3, 4, 5, 6],
},
{
data: [3, 4, 5, 6, 7],
},
]; // МАССИВ МОЖЕТ БЫТЬ ОГРОМНЫМ, ДАННЫЕ ТОЖЕ
const NEW_DATASETS = DATASETS
.map((dataset, index) => [sum(dataset), dataset, index]) // получаем соответствие суммы индексу
.sort(([a],[b]) => b - a) // сортируем по сумме в обратном порядке
.reduce((acc, [, dataset, sortedIndex], index) => {
acc[sortedIndex] = {
...dataset,
...colors[index]
};
return acc;
}, Array(DATASETS.length))
Если нужно конкретное решение - нужно больше конкретных деталей, а именно кусок кода где этот файл используется. От того как он используется - зависит способ того, как его менять.