2

有没有办法将ECMAScript 国际化 API与 nodejs 一起使用?

现在,我只需要时区支持:

new Date().toLocaleString("en-US", {timeZone: "America/New_York"})

它适用于 chrome,但不适用于 node。有没有像 --harmony 这样的选项来激活它?

4

1 回答 1

3

在为 node.js 构建时,国际化在 v8 中被关闭。原因是提供它的库显着增加了节点二进制文件的大小以获得小的感知增益。如果您愿意从源代码构建节点,可以重新打开它。首先,您必须查看 github repo ( https://github.com/joyent/node ),然后从 repo 根目录执行以下操作:

svn checkout --force --revision 214189 \
    http://src.chromium.org/svn/trunk/deps/third_party/icu46 \
    deps/v8/third_party/icu46
./configure --with-icu-path=deps/v8/third_party/icu46/icu.gyp
make
make install

这些说明来自该 repo 的 README.md,可以在https://github.com/joyent/node阅读

于 2014-05-09T18:53:25.463 回答