如何在JavaScript中将文件大小转换为mb?

如何在JavaScript中将文件大小转换为mb?,javascript,math,filesystems,Javascript,Math,Filesystems,如何仅在JavaScript中将文件大小转换为MB,它有时返回为长INT,我希望将其转换为MB,而不是显示字节或kb 如果可能的话,我也希望将其显示为如下示例(“0.01MB”),如果它低于1MB。Javscript ES5或更早版本: var sizeInMB = (sizeInBytes / (1024*1024)).toFixed(2); alert(sizeInMB + 'MB'); function bytesToMegaBytes(bytes) { return bytes

如何仅在JavaScript中将文件大小转换为MB,它有时返回为长INT,我希望将其转换为MB,而不是显示字节或kb


如果可能的话,我也希望将其显示为如下示例(“0.01MB”),如果它低于1MB。

Javscript ES5或更早版本:

var sizeInMB = (sizeInBytes / (1024*1024)).toFixed(2);
alert(sizeInMB + 'MB');
function bytesToMegaBytes(bytes) { 
  return bytes / (1024*1024); 
}
Javscript ES6(箭头函数):

如果要精确舍入到小数点后的数字,则:

function (bytes, roundTo) {
  var converted = bytes / (1024*1024);
  return roundTo ? converted.toFixed(roundTo) : converted;
}
在E6或更高版本中:

const bytesToMegaBytes = (bytes, digits) => roundTo ? (bytes / (1024*1024)).toFixed(digits) : (bytes / (1024*1024));
  • 有关的详细信息
  • 您可以在下面查看文件大小转换表,以获取将来的帮助。

  • 算出一个兆字节(1048576)中有多少字节,然后用基础数学计算出你要找的数字。搜索javascripts数学方法,我相信你会发现,这是非常简单的东西。@adeneo“非常简单的东西”是著名的临终遗言。类似于fuzzy time ala jquery.timeago.js的东西会很有用。@leif81来这里是为了寻找……var sizeInMB=$([sizeInBytes]).map(function(){return(this/1024/1024).toFixed(2)})[0]也可以查看
    const bytesToMegaBytes = (bytes, digits) => roundTo ? (bytes / (1024*1024)).toFixed(digits) : (bytes / (1024*1024));