8

次のように、オブジェクトのユニコード文字列をキーとして使用したい:

var t = {"姓名": "naitong"};

大丈夫です t["姓名"] return "naitong"

しかし

Object.keys({"姓名": "naitong"})

空の文字列 " " を取得しました

誰でも理由を知っていますか?

編集:

firebug をインストールしてコンソールで試してみると、動作します。実際、私はmozreplを使用しているので、emacsでjavascriptを編集して実行できます。これは mozrepl と関係があります

私は、mozrepl が「7 ビットセーフ ASCII」のみをサポートしていることを確認しました。ユニコードを変換するには、次のように emacs で json エンコードする必要があります。

alert(Object.keys(JSON.parse("{\"\\u59d3\\u540d\":\"naitong\"}")))

これは、stackoverflow で尋ねた最初の質問であり、迅速な回答を得ました。皆さん、ありがとうございました。

4

1 に答える 1

3

ファイアバグコンソールで問題なく動作します。

>>> Object.keys({"姓名": "naitong"})
["姓名"]

おそらく、それらの記号を含まない別の文字セットを使用するページに表示しようとしています。

于 2012-03-13T09:06:59.370 に答える