nginx-iteractive-index: Reimplement humanFileSize
The previous implementation was copy-pasted from a source that did not allow redistribution or sublicensing. Therefore, I reimplemented the function myself.
This commit is contained in:
parent
9995ff511e
commit
da349a7113
|
@ -1,19 +1,17 @@
|
|||
document.addEventListener('DOMContentLoaded', () => {
|
||||
function humanFileSize(bytes) {
|
||||
const thresh = 1024
|
||||
if(Math.abs(bytes) < thresh) {
|
||||
return bytes + ' B'
|
||||
}
|
||||
const units = ['KiB','MiB','GiB','TiB','PiB','EiB','ZiB','YiB']
|
||||
var u = -1
|
||||
do {
|
||||
bytes /= thresh
|
||||
++u
|
||||
} while(Math.abs(bytes) >= thresh && u < units.length - 1)
|
||||
return bytes.toFixed(1)+' '+units[u]
|
||||
function humanFileSize(size) {
|
||||
if (size === 0) {
|
||||
return "0 B";
|
||||
}
|
||||
if (size < 0) {
|
||||
return null;
|
||||
}
|
||||
const base = Math.floor(Math.log2(size) / 10)
|
||||
const unit = ["B", "KiB", "MiB", "GiB", "TiB"][base]
|
||||
const relative = size / 2**(10*base)
|
||||
return relative.toFixed(3) + " " + unit
|
||||
}
|
||||
|
||||
|
||||
function textToA(line) {
|
||||
let outerElement = document.createElement('div')
|
||||
outerElement.innerHTML = line
|
||||
|
|
Loading…
Reference in a new issue