JSON String のマルチバイトの仕様

ES5 の仕様書

http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf

JSON.stringify(”ほげほげ") は "ほげほげ" となるのが正しい模様。

一方で、RFC

http://www.ietf.org/rfc/rfc4627.txt

によると、"ほげほげ" は "\\u307b\\u3052\\u307b\\u3052" になってもよいよ、とある。

で、CouchDB は後者のエスケープバージョンのJSONしか受け付けないので、node.js 0.2.30.3 以降, あるいはES5をちゃんと実装しているモダンな(笑 ブラウザだと連携できなくなる.... なんだってー

[追記]
id:t_43z さんから 0.3 以降じゃね ? という指摘をいただいて、改めてソース確認。

macbook:tmp yssk22$ diff node-v0.2.4/deps/v8/src/json.js node-v0.2.2/deps/v8/src/json.js 
macbook:tmp yssk22$ diff node-v0.3.0/deps/v8/src/json.js node-v0.2.2/deps/v8/src/json.js 
71,75d70
<   '\b': '\\b',  // ASCII 8, Backspace
<   '\t': '\\t',  // ASCII 9, Tab
<   '\n': '\\n',  // ASCII 10, Newline
<   '\f': '\\f',  // ASCII 12, Formfeed
<   '\r': '\\r',  // ASCII 13, Carriage Return
77c72,79
<   '\\': '\\\\'
---
>   '\\': '\\\\',
>   '/': '\\/',
>   '\b': '\\b',
>   '\f': '\\f',
>   '\n': '\\n',
>   '\r': '\\r',
>   '\t': '\\t',
>   '\x0B': '\\u000b'
96c98
<   var quotable = /[\\\"\x00-\x1f]/g;
---
>   var quotable = /[\\\"\x00-\x1f\x80-\uffff]/g;

0.3 以降、ですね。失礼しました。