广东网站建站系统哪家好,申请做网站要什么局,东营建设信息网招聘,辽宁个人网站建设口碑推荐概要 提示#xff1a;大家都知道#xff0c;获取字符串的长度可用length来获取。 那么获取这段字符串的字节数呢#xff1f;英文字母肯定lenght和字节数都一样#xff1a;都是1而中文lenght1#xff0c;字节数2因此#xff0c;需要作的就是把中文字符的字节数计算出来。 …概要 提示大家都知道获取字符串的长度可用length来获取。 那么获取这段字符串的字节数呢英文字母肯定lenght和字节数都一样都是1而中文lenght1字节数2因此需要作的就是把中文字符的字节数计算出来。
例如
let str abcd;
console.log(str.length) // 4
let str 字符串;
console.log(str.length) // 3提示很显然这么获取字节长度是不对的。
实践
我们可以换一种思路既然要求是获取字符串的字符长度我们可以先把字符串直接转换成字节然后直接获取字节的长度就可以了。
JavaScript如何将字符串转换为字节数组
方法使用TextEncoder TextEncoder() 构造函数总是返回一个新创建的 TextEncoder 对象该对象将生成具有 UTF-8 编码的字节流。TextEncoder 接口不继承任何属性。
TextEncoder是一个内置的API可用于将字符串转换为字节数组。以下是使用TextEncoder的示例代码
// js字符获取字节长度
let str /测试测试/test1.js
let encoder new TextEncoder();
let bytes encoder.encode(str);
console.log(bytes.length) //22上述代码中我们首先创建一个TextEncoder实例然后使用encode方法将字符串转换为字节数组。最后我们通过控制台输出字节数组。请注意TextEncoder是现代浏览器的标准API因此在旧版本的浏览器中可能不可用。