javascript - 如何获取 JavaScript 字符串中的字符数

标签 javascript character-encoding string-length

string.length 返回字符串中 16 位字符的数量,因此字符串 '1.2 in exponent is 1.2e0' 的长度为 25,因为 e (\udc52) 是 17 位并被视为2 个不同的 unicode 字符。这种行为对于编程中的大多数情况可能很有用,如果我想知道字符串中的确切字符数(例如,在上面的示例中,是 24 而不是 25),该怎么办?是否有预定义的方法、技巧、技巧或任何方法来计算字符数而不是 16 位字符数?

注意:示例字符串中的 e 不是字母字符 E,而是 IEEE 754 格式中表示“指数”的字符

最佳答案

在 ES6 中,您可以使用 Array.from():

var string = "1.2 in exponent is 1.2𝑒0";
var charCount = Array.from(string).length;
console.log(charCount); // returns 24

关于javascript - 如何获取 JavaScript 字符串中的字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35055563/

相关文章:

javascript - 如何将http重定向到https加上将 `index.html`重定向到.htaccess中的另一个html页面?

python - python 2.7中的base64编码unicode字符串

javascript - ruby/rails 等同于 javascript decodeURIComponent?

ios - strlen() 给出错误的结果

c++ - 来自模板参数的字符串的 constexpr 长度

javascript - 这段 Javascript 代码中 "return"的意义

javascript - 如何将多个 HTML 表单中的值添加到一个数组中进行发送

python - 如何在 Pandas 的字符串末尾添加特定数量的字符?

javascript - 无需卡即可将图像分享到 Twitter

regex - 如何将反斜杠字符粘贴到字符串?