В моем приложении angular я преобразую байты в МБ , ГБ и т. Д. c.
Я получаю данные из бэкэнда.
У меня есть например: Все оперативной памяти, Доступный оперативной памяти и Используемый оперативной памяти.
Все значения хранятся как долго в нашем случае. Я просто конвертирую эти значения.
Для «Доступного барана» формула «AllRam - UsedRam» и получение минус значения считается нормальным.
Но в случае отрицательных значений это не работает.
Я использую функцию:
const SIZES = ['Bytes', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
formatBytes(bytes, decimals = 1) {
for (var i = 0, r = bytes, b = 1024; r > b; i++) r /= b;
return `${parseFloat(r.toFixed(decimals))} ${SIZES[i]}`;
}
Попытка добавить оператор if с байтами <0 </strong>, но это не помогло.