2012-03-13 21 views
8

Ben anahtar olarak Nesne unicode dizesi kullanmak istiyorsanız, bir şey olarak: tamamUnicode dize anahtarını Javascript nesnesinde nasıl kullanabilirim?

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

t [ "姓名"] dönüş "naitong"

ama

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

aldım "", boş bir dize

Herkes nedenini biliyor mu?

Kurgu: Ben kundakçı yükleyip konsolda denemek

işe yarıyor. Acrossually mozrepl kullanıyorum, böylece javascript'i emacs olarak düzenleyebilir ve çalıştırabilirim.

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

Bu: Yani bu unicode Dönüşümü için, ben gibi json kodlamak için bu emacs'taki var mozrepl

sadece "7 bit güvenli ASCII" o mozrepl desteğini teyit sahip

ile ilgisi stackoverflow'ta sorduğum ilk soru ve hızlı yanıtım var. Hepinize teşekkür ederim. firebug konsolunda benim için

+0

Tek tarayıcı? Tüm tarayıcılarda mı? Hangi? – hippietrail

+0

Firefox 10 ..... –

+0

Hangi platformda? Windows, bu sizin sorununuz olacak: emacs'ın mozrepl ile bağlantısı tarafından kullanılan (muhtemelen) C stdio arabirimi, Windows'da maalesef asla bir UTF olan yerel ayar kodu sayfasıyla sınırlıdır, bu yüzden keyfi Unicode alamayabilirsiniz o. – bobince

cevap

3

İşleri ince:

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

Belki bu semboller içermez farklı bir karakter kümesi kullanan bir sayfada göstermek için çalışıyoruz.

+0

Chrome konsolu da başarısını doğrular.> Object.keys ({"姓名": "naitong"}) '->' ["姓名"] ' – Hubro

İlgili konular