javascript - 如何在浏览器环境中获取 JavaScript 中数字和字符串的实际字节大小?

标签 javascript node.js google-chrome

我正在尝试在浏览器中获取数字和字符串的实际大小(以字节为单位),例如 Chrome 。
我了解到,在 JavaScript 中,数字以 double 表示占用 64 位,字符串是 UTF-16 代码单元,因此它需要 2 个字节或 4 个字节。
我第一次尝试使用 new Blob但它将字符串组件字符编码为 UTF-8 而不是 UTF-16。我知道有一个 Buffer.from Node 中的 API,但在浏览器环境中不可用。
我的问题是如何从浏览器获取数字和字符串的实际大小(以字节为单位),例如 Chrome ?

最佳答案

您可以在 TextEncoder 的帮助下本地完成此操作

let str1 = 'Beta'; // 'Beta' text in English
let str2 = '贝塔'; // 'Beta' text in Chinese

const encoder = new TextEncoder();

const len1 = encoder.encode(str1).length;
const len2 = encoder.encode(str2).length;

console.log(len1); // 4
console.log(len2); // 6

关于javascript - 如何在浏览器环境中获取 JavaScript 中数字和字符串的实际字节大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72889421/

相关文章:

google-chrome - 当我有太多标签时,谷歌浏览器标签变得无法使用。怎么修?

css - 在 Firefox 中运行良好的网页在 Chrome 中显示了一些样式问题

javascript - 移动一个 div 元素

javascript - R Shiny DataTables 用字符串替换数字并按小于数字值排序

javascript - Express app.post 被多次调用

angularjs - 在heroku上上传时,如何将 "view engine to ejs"更改为Node js中的其他内容

javascript - 如何从我的主进程代码中获取 Electron stdout 内容?

javascript - 如何在 Chrome 应用程序中创建一个简单的 WebSocket 服务器?

javascript - URL 结构破坏了 ng-src?

node.js - React 元标签不适用于 Facebook