作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否可以遍历所有 Unicode 字符 (UTF-8)?谢谢!我试过使用:
character = String.fromCharCode(i);
但我不确定如何实现它。
最佳答案
UTF-8 是一种编码! JavaScript 字符串是 (mostly)以 UTF-16 编码。仅当您在不支持 ES6 的 String.fromCodePoint
的环境中工作时,编码才重要。 .使用 ES6 从代码点获取字符串:
var s = String.fromCodePoint(codePoint);
没有 ES6,使用 UTF-16 surrogate pair对于字符 U+10000 及以后:
var s;
if (codePoint < 0x10000) {
s = String.fromCharCode(codePoint);
} else {
var offset = codePoint - 0x10000;
s = String.fromCharCode(0xd800 + (offset >> 10),
0xdc00 + (offset & 0x3ff));
}
代码点范围从 U+0000 到 U+10FFFF(1 114 112 值),但并非该范围内的所有内容都是有效的 Unicode 字符。你可以从 http://www.unicode.org/Public/8.0.0/ucd/UnicodeData.txt 得到一张表并提取您真正想要迭代的字符。
关于javascript - 如何遍历所有 Unicode 字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33792050/
我是一名优秀的程序员,十分优秀!