常用字节单位转化和字符中英文长度计算

分类:前端来源:站内 最近更新:2020-09-30 09:19:39浏览:914留言:0

在文件上传或者需要对文件大小做单位转化时经常用到的函数:

function getSize(bytes) {
   if (bytes === 0) return '0 B';
    var k = 1024; 
    sizes = ['Byte','KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'];
    i = Math.floor(Math.log(bytes) / Math.log(k));
    var result=parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i];
    return  result;
}


对中英文字符计算,中文算两个字符的计算函数

function strLength(str, len) {
    if (str) {
        var bytesCount = 0;
        for (var i = 0; i < str.length; i++) {
            var c = str.charAt(i);
            if (/^[\u0000-\u00ff]$/.test(c)) //匹配双字节
            {
                bytesCount += 1;
            } else {
                bytesCount += 2;
            }
        }
        var lj = bytesCount > len ? '...' : '';
        var str = str.substr(0, len);
        return str + lj;
    } else {
        return "";
    }
}


0

发表评论

评论列表(0)

  • 暂时没有留言
热门