当前位置:网站首页>获取字符串字节大小

获取字符串字节大小

2022-06-21 05:46:00 八月的猪猪

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
</head>

<body>
    <script>
        function getSize(str) {
            const bytes = unescape(encodeURIComponent(str)).length; // 获取字节
            const bytes1 = new Blob([str]).size; // 获取字节
            console.log("字节大小...", bytes, bytes1);
            const size = convert("B", bytes);
            return `${str} 字符大小:${size}`;
        }

        function convert(unit, bytes) {
            const units = ["B", "KB", "MB", "GB", "TB"];
            const i = units.indexOf(unit);
            const size = (bytes / pow1024(i)).toFixed(2); // 字节转其他单位
            return `${size} ${units[i]}`;
        }

        // 求次幂
        function pow1024(num) {
            return Math.pow(1024, num);
        }

        // 1个字节是8个二进制位(8个二进制位组成1个字节),即1Byte=8bit(八个位的组合,共有256种电路状态)。
        // 1个数字=1个英文字母(字符)=1字节(Byte),即一个标准英文字母就是一个字节,它有8个比特(bit),(如A为10D,用00001010来表示,8个二进制位)。1个汉字=2个字节,即一个标准汉字有2个字节,8个bit一个字节,也就是说在计算机里1个汉字要用16个bit来表示。另外中文标点符号占2个字节,英文标点符号(,.?!%&+-*/),占1个字节,中文省略号(……)和括(破折)号(——)各占4个字节。 文件的大小其实就是文件内容实际具有的字节数,它以Byte为衡量单位,只要文件内容和格式不发生变化,文件大小就不会发生变化。

        console.log(getSize("aaa"));
        console.log(getSize(123));
        console.log(getSize("蓝忘机"));

        // 参考文档:
        // 1. https://segmentfault.com/q/1010000007847667
        // 2. https://blog.csdn.net/qq_23994787/article/details/86609659
        // 3. https://aixiaodou.blog.csdn.net/article/details/108885082?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1-108885082-blog-106854329.pc_relevant_downloadblacklistv1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1-108885082-blog-106854329.pc_relevant_downloadblacklistv1&utm_relevant_index=1
    </script>
</body>

</html>
原网站

版权声明
本文为[八月的猪猪]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_42894622/article/details/125207739