带有正确语法(JS)的无效Unicode转义序列

时间:2019-03-17 01:59:13

标签: javascript eval unicode-escapes

我有一些这样的代码:

str = ""
for (var i = 0; i < 5; i++) str += eval("'\\u" + Math.floor(Math.random() * 65536).toString(16) + "'")

有时在控制台中运行此命令时,会发生Uncaught SyntaxError: Invalid Unicode escape sequence。错误在于eval引用中。该语法(包括eval)应该可以使用。具有反斜杠,“ u”和4个随机十六进制数字的字符串将传递到eval中。 eval将“ \ u”和十六进制数字解释为Unicode字符。用某种(足够)好的语法出现错误。 请找出导致此错误的原因,并提供可避免该错误的此代码版本。

0 个答案:

没有答案