Ben*_*oft 5 javascript text utf-8
我使用看似非标准但可以使用的字符进行故意错误:
var ?={};
?.causeError()
Uncaught TypeError: è.causeError is not a function
Run Code Online (Sandbox Code Playgroud)
显然ᛨ字符是è字符的一个版本
(utf-8普通文本字符a,b,c是文本)
VS
(非文本☎,®,෴,%)
è=== http://unicode-table.com/en/00E8/
Encoding hex dec (bytes) dec binary
UTF-8 C3 A8 195 168 50088 11000011 10101000
UTF-16BE 00 E8 0 232 232 00000000 11101000
UTF-16LE E8 00 232 0 59392 11101000 00000000
UTF-32BE 00 00 00 E8 0 0 0 232 232 00000000 00000000 00000000 11101000
UTF-32LE E8 00 00 00 232 0 0 0 3892314112 11101000 00000000 00000000 00000000
Run Code Online (Sandbox Code Playgroud)
ᛨ=== http://unicode-table.com/en/16E8/
Encoding hex dec (bytes) dec binary
UTF-8 E1 9B A8 225 155 168 14785448 11100001 10011011 10101000
UTF-16BE 16 E8 22 232 5864 00010110 11101000
UTF-16LE E8 16 232 22 59414 11101000 00010110
UTF-32BE 00 00 16 E8 0 0 22 232 5864 00000000 00000000 00010110 11101000
UTF-32LE E8 16 00 00 232 22 0 0 3893755904 11101000 00010110 00000000 00000000
Run Code Online (Sandbox Code Playgroud)
我没有看到相关性!
如何测试非标准字符以查看它们是否与普通文本字符相关?
我会寻找什么样的关系?
不感兴趣; 这个Unicode问题是否记录在何处?
[经过进一步思考后,这个问题尚未完全解决(见评论)]
它使用名为 \xe0\xb2\xa0_\xe0\xb2\xa0 的变量进行测试,错误消息包含“ _ ”(空格下划线空格)。看起来编写错误消息的代码不支持应有的字符数。
\n\n同样的问题发生在控制台中,所以这不是文件编码问题。另外,除了自动错误消息之外,字符的管理没有任何问题。即使写作也throw new Error("\xe0\xb2\xa0_\xe0\xb2\xa0");没有问题。
这似乎是一个相当具体的错误,但它会影响 Chrome 和 Firefox。
\n| 归档时间: |
|
| 查看次数: |
82 次 |
| 最近记录: |