आप स्ट्रिंग के JSON सरणी का प्रतिनिधित्व कैसे करते हैं?


184

यह आपको वैध JSON के लिए आवश्यक है, है ना?

["somestring1", "somestring2"]

6
यह एक JSON सरणी है जिसमें दो तार हैं, हां ... क्या उस प्रश्न पर अधिक है? ;)
टाउन

मैंने कुछ पढ़ा जिसमें सभी सहमत हैं कि हमने क्या विरोधाभास किया। इसलिए, मुझे वहां का रियलिटी चेक चाहिए था। धन्यवाद!
फिनेकैनहेल्प

4
ओह समझा! यह शर्म की बात है कि आप अपने प्रश्न को उत्तर के रूप में स्वीकार नहीं कर सकते: डी
टाउन

:) खैर, यह सिर्फ जवाब नहीं है जो मजेदार है। यह अपने आप में महान लोग हैं जो इस साइट को एक मजेदार सफलता बनाने में मदद करते हैं!
फाइनेंशियलहैप

जवाबों:


299

मैं क्रिसआर के भयानक उत्तर पर थोड़ा और विस्तृत करूंगा और उनके भयानक संदर्भ से चित्र लाऊंगा ।

एक वैध JSON हमेशा या तो घुंघराले ब्रेसिज़ {या चौकोर कोष्ठक से शुरू होता है [, और कुछ नहीं।

{शुरू होगा एक object:

बाईं ओर ब्रेस के बाद एक कुंजी स्ट्रिंग (एक नाम जिसे दोहराया नहीं जा सकता है, उद्धरण में), बृहदान्त्र और एक मूल्य (नीचे दिखाए गए मान्य प्रकार), इसके बाद एक वैकल्पिक अल्पविराम द्वारा स्ट्रिंग और मूल्य के अधिक जोड़े को जोड़ा जाएगा और इच्छा के साथ समाप्त किया गया एक सही कंस

{ "key": value, "another key": value }

संकेत : हालांकि जावास्क्रिप्ट एकल उद्धरण स्वीकार करता है ', JSON केवल डबल ही लेता है "

[शुरू होगा एक array:

बाएं कोष्ठक को मान के साथ रखा गया है, वैकल्पिक कॉमा को अधिक मान जोड़ने के लिए और दाएं ब्रैकेट के साथ समाप्त किया गया है

[value, value]

संकेत : तत्वों के बीच रिक्त स्थान को हमेशा किसी JSON पार्सर द्वारा अनदेखा किया जाता है।

और valueएक object, array, string, number, boolया null:

6 प्रकार के JSON मान दिखाने वाली छवि हो सकती है: string, number, JSON object, Array / list, boolean, और null

तो हाँ, ["a", "b"]एक पूरी तरह से वैध JSON है, जैसे कि आप लिंक पर कोशिश कर सकते हैं मनीष ने बताया

यहाँ कुछ अतिरिक्त वैध JSON उदाहरण हैं, प्रति ब्लॉक एक:

{}

[0]

{"__comment": "json doesn't accept comments and you should not be commenting even in this way", "avoid!": "also, never add more than one key per line, like this"}

[{   "why":null} ]

{
  "not true": [0, false],
  "true": true,
  "not null": [0, 1, false, true, {
    "obj": null
  }, "a string"]
}

22
तो बहुत बढ़िया यूआई प्रतिनिधित्व
श्रीदत्त कोठारी

क्या JSON में दोहरे उद्धरण-चिह्न हैं? मैंने ऊपर ओपी के स्ट्रिंग को मान्य करने की कोशिश की, लेकिन jsonlint.com पर एकल उद्धरण के साथ और यह बताता है कि यह अमान्य है। लेकिन यह दोहरे उद्धरण चिह्नों का उपयोग करते समय मान्य है।
रे

@ हमेशा की तरह, कि एक साधारण हाँ या कोई जवाब नहीं है, हालांकि मैं कहूंगा कि यह ज्यादातर "हाँ, बस दोहरे उद्धरण चिह्नों के साथ जाना"। json.org हमें केवल दोहरे उद्धरण चिह्नों का उपयोग करने के बारे में बताता है, और अधिकांश स्थान संभवतः इसका अनुसरण करेंगे। हालाँकि, इसके बारे में एक गहरी जाँच है: stackoverflow.com/a/2275428/274502
cregox

61

इस मामले में आपकी JSON ऑब्जेक्ट एक सूची है। JSON विशेषताओं के साथ लगभग हमेशा एक वस्तु है; एक या अधिक कुंजी का एक सेट: मूल्य जोड़े, ताकि आप सबसे अधिक संभावना एक शब्दकोश देखें:

{ "MyStringArray" : ["somestring1", "somestring2"] }

तो आप के मूल्य के लिए पूछ सकते हैं "MyStringArray"और आप दो तार की एक सूची वापस मिल जाएगा, "somestring1"और "somestring2"


12
आपके द्वारा पोस्ट किया गया कोड उदाहरण अमान्य है, जब आप उस स्ट्रिंग को एक जोंस के रूप में पार्स करने की कोशिश करेंगे तो यह एक त्रुटि / अपवाद को फेंक देगा। तथ्य यह है कि आप कहते हैं कि JSON हमेशा प्रमुख है / मूल्य जोड़े भी स्वाभाविक रूप से गलत हैं। JSON युक्ति में कुछ भी नहीं कहा गया है कि आपको कुंजी / मान जोड़े की आवश्यकता है। : जब डेटा परिवहन के बारे में बात वास्तव में कुंजी / मान जोड़े सबसे अधिक उपयोगी संरचना हैं, लेकिन स्ट्रिंग ओपी पोस्ट पूरी तरह से वैध JSON है codebeautify.org/jsonviewer/92ac7b
ChrisR

1
मेरे पास मस्तिष्क पर एपीआई था, जहां आप एक कुंजी के आधार पर एक सरणी में मूल्य देखना चाहते हैं। तो यह एक गैर-नामित सरणी के लिए होगा, {"1": "somestring1", "2": "somestring2"}
PapaSmurf

41

मूल रूप से हां, JSON आपके मूल्य का केवल एक जावास्क्रिप्ट शाब्दिक प्रतिनिधित्व है इसलिए आपने जो कहा वह सही है।

आप http://json.org/ पर JSON संकेतन की बहुत स्पष्ट और अच्छी व्याख्या पा सकते हैं


5
String strJson="{\"Employee\":
[{\"id\":\"101\",\"name\":\"Pushkar\",\"salary\":\"5000\"},
{\"id\":\"102\",\"name\":\"Rahul\",\"salary\":\"4000\"},
{\"id\":\"103\",\"name\":\"tanveer\",\"salary\":\"56678\"}]}";

यह Employeeऑब्जेक्ट के रूप में JSON स्ट्रिंग का एक उदाहरण है , फिर एक संदर्भ में एक सरणी में कई स्ट्रिंग और मान @cregox...

थोड़ा जटिल लेकिन एक सिंगल JSON स्ट्रिंग में बहुत कुछ समझा सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.