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/