Size: a a a

NodeUA - JavaScript and Node.js in Ukraine

2020 September 07

M

Mehannoying in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
Вот библиотека, где все это есть https://github.com/metarhia/common
Тянуть целую либу ради одной функции, такое себе.
источник

‌‌

‌‌‎nil ‌‌‎... in NodeUA - JavaScript and Node.js in Ukraine
Yury
Это то понятно, а санкции какие в связи с этим будут вводиться?
Тяжелейшие кармические от вселенной
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Но если вдруг когда-то мне что-то не понравится, то очень просто можно за жопу взять
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
источник

M

Mehannoying in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
Копипейстом к себе в проект вы этот код не можете забрать, или сами пишите или копирайты добавьте, откуда взято или зависимость
Насчет копирайтов, вы бы добавили файлик с лицензией, который нужно указывать, а то от себя писать не круто.)
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
Вместо
return rate > 0
       ? `${size}${markers[rate]}b`
       : `${size}${markers[rate]}`
   ;

нужно написать:
return `${size}${markers[rate]}${rate > 0 : 'b' : ''}`;

и так дажее...
bytesToShortSize - так писать нельзя, это лапша,
вот эта функция как должны выглядет:
const SIZE_UNITS = ['', ' Kb', ' Mb', ' Gb', ' Tb', ' Pb', ' Eb', ' Zb', ' Yb'];

const bytesToSize = bytes => {
 if (bytes === 0) return '0';
 const exp = Math.floor(Math.log(bytes) / Math.log(1000));
 const size = bytes / 1000 ** exp;
 const short = Math.round(size, 2);
 const unit = SIZE_UNITS[exp];
 return short + unit;
};
🙏 😊 Спасибо, приму к сведению
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Mehannoying
Насчет копирайтов, вы бы добавили файлик с лицензией, который нужно указывать, а то от себя писать не круто.)
Там есть и лицензия и авторы https://github.com/metarhia/common
источник

M

Mehannoying in NodeUA - JavaScript and Node.js in Ukraine
Хорошо, что не указал, что в проектах с многомиллионной капитализацией.)0
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
Вместо
return rate > 0
       ? `${size}${markers[rate]}b`
       : `${size}${markers[rate]}`
   ;

нужно написать:
return `${size}${markers[rate]}${rate > 0 : 'b' : ''}`;

и так дажее...
bytesToShortSize - так писать нельзя, это лапша,
вот эта функция как должны выглядет:
const SIZE_UNITS = ['', ' Kb', ' Mb', ' Gb', ' Tb', ' Pb', ' Eb', ' Zb', ' Yb'];

const bytesToSize = bytes => {
 if (bytes === 0) return '0';
 const exp = Math.floor(Math.log(bytes) / Math.log(1000));
 const size = bytes / 1000 ** exp;
 const short = Math.round(size, 2);
 const unit = SIZE_UNITS[exp];
 return short + unit;
};
А почему вы через стрелочную функцию объявляете? Это ведь все равно объект на выходе
источник

M

Mehannoying in NodeUA - JavaScript and Node.js in Ukraine
Ну увсё, теперь я защищен от хватания за жопу.
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Mehannoying
Ну увсё, теперь я защищен от хватания за жопу.
Это оупенсорс, или бери бесплатно и добавояй ссылки на авторв со всем уважением или на счетчик поставят
источник

M

Mehannoying in NodeUA - JavaScript and Node.js in Ukraine
Это понятно.
источник

TS

Timur Shemsedinov in NodeUA - JavaScript and Node.js in Ukraine
Alexander
А почему вы через стрелочную функцию объявляете? Это ведь все равно объект на выходе
Где объект?
источник

A

Alexander in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
Где объект?
Я имею в виду вот эту часть кода, что вы предложили переписать ( bytesToSize )
const bytesToSize = bytes => { ... }
источник

AS

Andrey Saenko in NodeUA - JavaScript and Node.js in Ukraine
Alexander
Я имею в виду вот эту часть кода, что вы предложили переписать ( bytesToSize )
const bytesToSize = bytes => { ... }
👏
источник

KR

Kostyantin Randomnam... in NodeUA - JavaScript and Node.js in Ukraine
Timur Shemsedinov
Но избавиться от if-ов по обработке ошибок принципиально невозможно, их можно только скрыть за абстракциями, вынести из бизнес-логики, чтобы очистить минтаксим куска кода и повысить его читаемость, чтобы этот if не писать по 10 раз в разных частях приложения, но он все равно будет где-то.
Тут что лукапы приватизируют?
По цитате минтаксим это что?
источник