Как я могу использовать строковый ключ Unicode в объекте Javascript?
Я хочу использовать Unicode-строку в Object в качестве ключа, что-то вроде:
var t = {"姓名": "naitong"};
все в порядке, т ["姓名"] вернуть "naitong"
но
Object.keys({"姓名": "naitong"})
Я получил "", пустую строку
Кто-нибудь знает почему?
Editting:
Я устанавливаю firebug и пробую его в консоли, он работает. На самом деле я использую mozrepl, так что я могу редактировать и запускать javascript в emacs. Так что это как-то связано с мозрепл
Я подтверждаю, что mozrepl поддерживает только "7-битный безопасный ASCII", чтобы преобразовать Unicode, я должен JSON-кодировать его в Emacs, как:
alert(Object.keys(JSON.parse("{\"\\u59d3\\u540d\":\"naitong\"}")))
Это мой первый вопрос, заданный на stackru, и я получил быстрый респ. Спасибо вам всем.
1 ответ
У меня отлично работает в консоли firebug:
>>> Object.keys({"姓名": "naitong"})
["姓名"]
Возможно, вы пытаетесь отобразить его на странице, которая использует другую кодировку, которая не содержит эти символы.