2010-03-02 5 views
20

मैं जेएसओएन सीख रहा हूं, लेकिन मुझे पता चला कि आप JSON में "हैश" कहला सकते हैं? मुझे पता चल सकता है कि हैश क्या है? या क्या आप मुझे समझा सकते हैं कि हैश क्या है? इसके अलावा, हैशपैप क्या है? मुझे सी ++ और सी # में अनुभव है, और मैं जेएस, जेक्री और जेएसओएन सीख रहा हूं।JSON के संबंध में एक हैश वास्तव में क्या है?

उत्तर

25

एक हैश एक विरल सरणी मनमाने ढंग से तार/वस्तुओं का उपयोग करता है बल्कि कुंजी के रूप में सादे पूर्णांकों से (कार्यान्वयन के आधार पर, इस प्रोग्रामिंग भाषाओं में भिन्न होती है)।

जावास्क्रिप्ट में, कोई ऑब्जेक्ट तकनीकी रूप से हैश (जिसे एक शब्दकोश, एसोसिएटिव-ऐरे, आदि के रूप में भी जाना जाता है) है।

उदाहरण:

var myObj = {}; // Same as = new Object(); 
    myObj['foo'] = 'bar'; 

    var myArr = []; // Same as = new Array(); 
    myArr[0] = 'foo'; 
    myArr[1] = 'bar'; 
    myArr['blah'] = 'baz'; // This will work, but is not recommended. 

अब, JSON के बाद से मूल रूप से जे एस निर्माणों और कुछ सख्त दिशा निर्देश उपयोग कर रहा है पोर्टेबल डेटा को परिभाषित करने, बराबर ऊपर myObj होगा:

{ "foo" : "bar" }; 

आशा इस मदद करता है।

+0

वाह क्या यह है? मैं चीजों को खत्म कर रहा था। – Alex

+0

आपकी आखिरी पंक्ति के बारे में एक नोट: आप सरणी पर गुण सेट कर सकते हैं जैसे कि वे ऑब्जेक्ट थे - वे * ऑब्जेक्ट्स हैं, और उस मामले में ऑब्जेक्ट्स की तरह कार्य करेंगे। – skeggse

+0

@ सीएमसी: धन्यवाद। उत्तर अपडेट किया गया। –

11

हैश = शब्दकोश।

एक हैश:

{ "key1": "value1", "key2": "value2" } 
-1

आई हैश एक यादृच्छिक दिखने वाला नंबर है जो डेटा के एक टुकड़े से उत्पन्न होता है और हमेशा उसी इनपुट के लिए समान होता है। उदाहरण के लिए यदि आप कुछ वेबसाइटों से फ़ाइलें डाउनलोड करते हैं तो वे डेटा का हैश प्रदान करेंगे ताकि आप सत्यापित कर सकें कि आपका डाउनलोड दूषित नहीं है (जो हैश बदल जाएगा)। हैश का एक अन्य अनुप्रयोग हैश टेबल (या हैश मानचित्र) में है। यह एक बहुत तेज़ सहयोगी डेटा संरचना है जहां हैश का उपयोग सरणी में अनुक्रमणित करने के लिए किया जाता है। सीडी + में std :: unorderd_map इसका एक उदाहरण है। आप जेएसओएन में एक हैश को स्ट्रिंग के रूप में स्टोर कर सकते हैं उदाहरण के लिए "AB34F553" जैसे कुछ और डेटा को सत्यापित करने के लिए इसका उपयोग करें। JSON शब्दकोश प्रकार के तत्वों का भी समर्थन करता है। लोग इन्हें हैश टेबल के रूप में संदर्भित कर सकते हैं, लेकिन यह तकनीकी रूप से गलत होगा क्योंकि JSON डेटा से जुड़े कोई विशेष डेटा संरचना कार्यान्वयन नहीं है।