2012-03-13 13 views
8

मैं कुंजी के रूप में वस्तु में यूनिकोड स्ट्रिंग का उपयोग करना चाहते हैं, कुछ के रूप में:मैं जावास्क्रिप्ट ऑब्जेक्ट में यूनिकोड स्ट्रिंग कुंजी का उपयोग कैसे कर सकता हूं?

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

यह ठीक है, टी [ "姓名"] वापसी "naitong"

लेकिन

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

मुझे मिल गया "", एक खाली स्ट्रिंग

कोई भी जानता है क्यों?

editting:

मैं फ़ायरबग स्थापित करने और कंसोल में यह कोशिश करते हैं, यह काम करता है। अकसर मैं mozrepl का उपयोग करता हूं, ताकि मैं emacs में जावास्क्रिप्ट को संपादित और चला सकूं। तो यह mozrepl

मैं पुष्टि करते हैं कि mozrepl समर्थन केवल "7bit सुरक्षित ASCII" है के साथ क्या के लिए कुछ है, यूनिकोड tranform करने के लिए, मैं JSON एन्कोड करने के लिए Emacs में यह है, के रूप में:

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

यह मेरा पहला सवाल स्टैक ओवरफ्लो पर पूछा गया है, और मुझे त्वरित राहत मिली। आप सभी को धन्यवाद। मेरे लिए

+0

एक ब्राउज़र? सभी ब्राउज़रों पर? कौन कौन से? – hippietrail

+0

फ़ायरफ़ॉक्स 10 ..... –

+0

क्या मंच? यदि विंडोज़, यह आपकी समस्या होगी: सी स्टडीओ इंटरफ़ेस जो संभवत: mozrepl से emacs के कनेक्शन द्वारा उपयोग किया जाता है, लोकेल के कोड पेज तक सीमित है, जो दुर्भाग्यवश दुर्भाग्यवश यूटीएफ नहीं है, इसलिए आप मनमाने ढंग से यूनिकोड नहीं प्राप्त कर सकते हैं यह। – bobince

उत्तर

3

वर्क्स ठीक फ़ायरबग कंसोल में:

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

हो सकता है कि आप एक पृष्ठ एक अलग चारसेट जो उन प्रतीकों शामिल नहीं है का उपयोग करता है पर प्रदर्शित करने के प्रयास कर रहे हैं।

+0

क्रोम कंसोल भी सफलता की पुष्टि करता है '> Object.keys ({"姓名": "naitong"}) '->' ["姓名"] ' – Hubro