SpiderMonkey 是否正确处理 Unicode 转义?当我尝试使用 SpiderMonkey 将带有 unicode 转义符的字符串打印到标准输出时,它会处理它们。V8 和 Node.JS 按预期显示输出。
这是蜘蛛猴:
$ js
js> this.print("\u201cquotes\u201d")
quotes
这比看起来更糟糕,因为输出包含无效的 UTF-8 二进制数据。
这是 V8,它显示了引号:
$ v8
V8 version 3.7.0 [sample shell]
> this.print("\u201cquotes\u201d")
“quotes”
这是 Node.JS,它也显示了引号:
$ node
> console.log("\u201cquotes\u201d")
“quotes”
编辑:我在 Mac OS X 10.8.2 (Mountain Lion) 上运行。
$ echo $LANG
en_US.UTF-8
$ js --version
JavaScript-C 1.8.5 2011-03-31
$ brew info spidermonkey
spidermonkey: stable 1.8.5, HEAD
https://developer.mozilla.org/en/SpiderMonkey
Depends on: readline, nspr
/usr/local/Cellar/spidermonkey/1.8.5 (101 files, 12M) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/spidermonkey.rb
==> Caveats
This formula installs Spidermonkey 1.8.5.
If you are trying to compile MongoDB from scratch, you will need 1.7.x instead.