DataSnapshot class

DataSnapshot डेटाबेस स्थान से डेटा शामिल होता है।

जब भी आप डेटाबेस से डेटा पढ़ते हैं, तो आपको डेटा DataSnapshot के रूप में प्राप्त होता है . एक DataSnapshot उस ईवेंट कॉलबैक को पास कर दिया जाता है जिसे आप on() या once() के साथ संलग्न करते हैं . आप val() विधि को कॉल करके स्नैपशॉट की सामग्री को जावास्क्रिप्ट ऑब्जेक्ट के रूप में निकाल सकते हैं। वैकल्पिक रूप से, आप चाइल्ड स्नैपशॉट वापस करने के लिए child() को कॉल करके स्नैपशॉट में जा सकते हैं (जिसे आप val() पर कॉल कर सकते हैं)।

DataSnapshot किसी डेटाबेस स्थान पर डेटा की कुशलतापूर्वक उत्पन्न, अपरिवर्तनीय प्रतिलिपि है। इसे संशोधित नहीं किया जा सकता है और यह कभी नहीं बदलेगा (डेटा को संशोधित करने के लिए, आप हमेशा सीधे Reference पर set() विधि को कॉल करते हैं)।

हस्ताक्षर:

export declare class DataSnapshot 

गुण

संपत्ति संशोधक प्रकार विवरण
चाबी स्ट्रिंग | व्यर्थ इस DataSnapshot के स्थान की कुंजी (पथ का अंतिम भाग)। डेटाबेस स्थान में अंतिम टोकन को इसकी कुंजी माना जाता है। उदाहरण के लिए, "ada" /users/ada/ नोड के लिए कुंजी है। किसी भी DataSnapshot पर कुंजी तक पहुंचने से उस स्थान की कुंजी वापस आ जाएगी जिसने इसे उत्पन्न किया था। हालाँकि, डेटाबेस के रूट यूआरएल पर कुंजी तक पहुँचने से null वापस आ जाएगा।
प्राथमिकता स्ट्रिंग | संख्या | व्यर्थ इस DataSnapshot में डेटा का प्राथमिकता मान प्राप्त होता है। एप्लिकेशन को प्राथमिकता का उपयोग करने की आवश्यकता नहीं है, लेकिन सामान्य गुणों के आधार पर संग्रह का आदेश दे सकते हैं ( डेटा को सॉर्ट करना और फ़िल्टर करना देखें)।
संदर्भ डेटाबेस संदर्भ इस डेटास्नैपशॉट का स्थान.
आकार संख्या इस DataSnapshot की चाइल्ड प्रॉपर्टी की संख्या लौटाता है।

तरीकों

तरीका संशोधक विवरण
बच्चा(पथ) निर्दिष्ट सापेक्ष पथ पर स्थान के लिए एक और DataSnapshot प्राप्त करता है। डेटा स्नैपशॉट की child() विधि के लिए एक सापेक्ष पथ पास करने से निर्दिष्ट सापेक्ष पथ पर स्थान के लिए एक और DataSnapshot वापस आ जाता है। सापेक्ष पथ या तो एक साधारण बच्चे का नाम हो सकता है (उदाहरण के लिए, "एडीए") या एक गहरा, स्लैश-पृथक पथ (उदाहरण के लिए, "एडीए/नाम/प्रथम")। यदि चाइल्ड स्थान में कोई डेटा नहीं है, तो एक खाली DataSnapshot (अर्थात्, एक DataSnapshot जिसका मान null है) लौटाया जाता है।
मौजूद() यदि इस DataSnapshot में कोई डेटा है तो यह सत्य लौटाता है। यह snapshot.val() !== null उपयोग करने से थोड़ा अधिक कुशल है।
निर्यातवैल() डेटास्नैपशॉट की संपूर्ण सामग्री को जावास्क्रिप्ट ऑब्जेक्ट के रूप में निर्यात करता है। exportVal() विधि val() के समान है, सिवाय इसके कि प्राथमिकता जानकारी शामिल है (यदि उपलब्ध हो), जो इसे आपके डेटा का बैकअप लेने के लिए उपयुक्त बनाती है।
प्रत्येक के लिए(क्रिया) IteratedDataSnapshot में शीर्ष स्तर के बच्चों की गणना करता है। जावास्क्रिप्ट ऑब्जेक्ट के काम करने के तरीके के कारण, val() द्वारा लौटाए गए जावास्क्रिप्ट ऑब्जेक्ट में डेटा का ऑर्डर सर्वर पर ऑर्डर से मेल खाने की गारंटी नहीं है और न ही onChildAdded() इवेंट के ऑर्डर से मेल खाने की गारंटी है। यहीं पर forEach() काम आता है। यह गारंटी देता है कि DataSnapshot के बच्चों को उनके क्वेरी क्रम में दोहराया जाएगा। यदि कोई स्पष्ट orderBy*() विधि का उपयोग नहीं किया जाता है, तो परिणाम कुंजी द्वारा क्रमबद्ध लौटाए जाते हैं (जब तक कि प्राथमिकताओं का उपयोग नहीं किया जाता है, उस स्थिति में, परिणाम प्राथमिकता द्वारा लौटाए जाते हैं)।
हैचाइल्ड(पथ) यदि निर्दिष्ट चाइल्ड पथ में (गैर-शून्य) डेटा है तो सत्य लौटाता है।
बच्चे हैं() यह बताता है कि DataSnapshot में कोई गैर- null चाइल्ड गुण हैं या नहीं। आप यह निर्धारित करने के लिए hasChildren() उपयोग कर सकते हैं कि DataSnapshot में कोई बच्चा है या नहीं। यदि ऐसा होता है, तो आप forEach() का उपयोग करके उनकी गणना कर सकते हैं। यदि ऐसा नहीं होता है, तो या तो इस स्नैपशॉट में एक आदिम मान शामिल है (जिसे val() के साथ पुनर्प्राप्त किया जा सकता है) या यह खाली है (जिस स्थिति में, val() null वापस आ जाएगा)।
toJSON() इस ऑब्जेक्ट का JSON-क्रमबद्ध प्रतिनिधित्व लौटाता है।
वैल() DataSnapshot से JavaScript मान निकालता है। DataSnapshot में डेटा के आधार पर, val() विधि एक स्केलर प्रकार (स्ट्रिंग, संख्या, या बूलियन), एक सरणी, या एक ऑब्जेक्ट लौटा सकती है। यह शून्य भी लौट सकता है, यह दर्शाता है कि DataSnapshot खाली है (इसमें कोई डेटा नहीं है)।

डेटास्नैपशॉट.कुंजी

इस DataSnapshot के स्थान की कुंजी (पथ का अंतिम भाग)। .

डेटाबेस स्थान में अंतिम टोकन को इसकी कुंजी माना जाता है। उदाहरण के लिए, "ada" /users/ada/ नोड के लिए कुंजी है। किसी भी DataSnapshot पर कुंजी तक पहुंचने से उस स्थान की कुंजी वापस आ जाएगी जिसने इसे उत्पन्न किया था। हालाँकि, डेटाबेस के रूट URL पर कुंजी तक पहुँच null हो जाएगी .

हस्ताक्षर:

get key(): string | null;

डेटास्नैपशॉट.प्राथमिकता

इस DataSnapshot में डेटा का प्राथमिकता मान प्राप्त होता है .

एप्लिकेशन को प्राथमिकता का उपयोग करने की आवश्यकता नहीं है, लेकिन सामान्य गुणों के आधार पर संग्रह का आदेश दे सकते हैं ( डेटा को सॉर्ट करना और फ़िल्टर करना देखें)।

हस्ताक्षर:

get priority(): string | number | null;

DataSnapshot.ref

इस डेटास्नैपशॉट का स्थान.

हस्ताक्षर:

readonly ref: DatabaseReference;

डेटास्नैपशॉट.आकार

इस DataSnapshot की चाइल्ड प्रॉपर्टी की संख्या लौटाता है .

हस्ताक्षर:

get size(): number;

डेटास्नैपशॉट.चाइल्ड()

निर्दिष्ट सापेक्ष पथ पर स्थान के लिए एक और DataSnapshot प्राप्त करता है।

डेटा स्नैपशॉट की child() विधि के लिए एक सापेक्ष पथ पास करने से निर्दिष्ट सापेक्ष पथ पर स्थान के लिए एक और DataSnapshot वापस आ जाता है। सापेक्ष पथ या तो एक साधारण बच्चे का नाम हो सकता है (उदाहरण के लिए, "एडीए") या एक गहरा, स्लैश-पृथक पथ (उदाहरण के लिए, "एडीए/नाम/प्रथम")। यदि चाइल्ड स्थान में कोई डेटा नहीं है, तो एक खाली DataSnapshot (अर्थात, एक DataSnapshot जिसका मान null है) ) लौटा दिया गया है।

हस्ताक्षर:

child(path: string): DataSnapshot;

पैरामीटर

पैरामीटर प्रकार विवरण
पथ डोरी चाइल्ड डेटा के स्थान का एक सापेक्ष पथ.

रिटर्न:

डेटा स्नैपशॉट

डेटास्नैपशॉट.मौजूद()

यदि इस DataSnapshot में कोई डेटा है तो यह सत्य लौटाता है। यह snapshot.val() !== null उपयोग करने से थोड़ा अधिक कुशल है .

हस्ताक्षर:

exists(): boolean;

रिटर्न:

बूलियन

डेटास्नैपशॉट.exportVal()

डेटास्नैपशॉट की संपूर्ण सामग्री को जावास्क्रिप्ट ऑब्जेक्ट के रूप में निर्यात करता है।

exportVal() विधि val() के समान है , सिवाय इसके कि प्राथमिकता वाली जानकारी शामिल है (यदि उपलब्ध हो), जो इसे आपके डेटा का बैकअप लेने के लिए उपयुक्त बनाती है।

हस्ताक्षर:

exportVal(): any;

रिटर्न:

कोई

डेटा स्नैपशॉट की सामग्री जावास्क्रिप्ट मान (ऑब्जेक्ट, ऐरे, स्ट्रिंग, संख्या, बूलियन, या null ) के रूप में ).

डेटास्नैपशॉट.प्रत्येक के लिए()

IteratedDataSnapshot में शीर्ष-स्तरीय बच्चों की गणना करता है .

जावास्क्रिप्ट ऑब्जेक्ट के काम करने के तरीके के कारण, val() द्वारा लौटाए गए जावास्क्रिप्ट ऑब्जेक्ट में डेटा का ऑर्डर सर्वर पर ऑर्डर से मेल खाने की गारंटी नहीं है और न ही onChildAdded() इवेंट के ऑर्डर से मेल खाने की गारंटी है। यहीं पर forEach() काम आता है। यह गारंटी देता है कि DataSnapshot के बच्चों को उनके क्वेरी क्रम में दोहराया जाएगा।

यदि कोई स्पष्ट orderBy*() विधि का उपयोग नहीं किया जाता है, तो परिणाम कुंजी द्वारा क्रमबद्ध लौटाए जाते हैं (जब तक कि प्राथमिकताओं का उपयोग नहीं किया जाता है, उस स्थिति में, परिणाम प्राथमिकता द्वारा लौटाए जाते हैं)।

हस्ताक्षर:

forEach(action: (child: IteratedDataSnapshot) => boolean | void): boolean;

पैरामीटर

पैरामीटर प्रकार विवरण
कार्रवाई (बच्चा: IteratedDataSnapshot ) => बूलियन | खालीपन एक फ़ंक्शन जिसे प्रत्येक चाइल्ड डेटास्नैपशॉट के लिए कॉल किया जाएगा। आगे की गणना को रद्द करने के लिए कॉलबैक सही लौट सकता है।

रिटर्न:

बूलियन

यदि आपके कॉलबैक के सत्य लौटने के कारण गणना रद्द कर दी गई है तो यह सत्य है।

DataSnapshot.hasChild()

यदि निर्दिष्ट चाइल्ड पथ में (गैर-शून्य) डेटा है तो सत्य लौटाता है।

हस्ताक्षर:

hasChild(path: string): boolean;

पैरामीटर

पैरामीटर प्रकार विवरण
पथ डोरी संभावित बच्चे के स्थान का सापेक्ष पथ.

रिटर्न:

बूलियन

यदि निर्दिष्ट चाइल्ड पथ पर डेटा मौजूद है तो true ; अन्यथा false .

DataSnapshot.hasChildren()

यह बताता है कि DataSnapshot में कोई गैर- null चाइल्ड गुण हैं या नहीं।

आप यह निर्धारित करने के लिए hasChildren() उपयोग कर सकते हैं कि DataSnapshot में कोई बच्चा है या नहीं। यदि ऐसा होता है, तो आप forEach() उपयोग करके उनकी गणना कर सकते हैं . यदि ऐसा नहीं होता है, तो या तो इस स्नैपशॉट में एक आदिम मान होता है (जिसे val() के साथ पुनर्प्राप्त किया जा सकता है ) या यह खाली है (जिस स्थिति में, val() null वापस आ जाएगा ).

हस्ताक्षर:

hasChildren(): boolean;

रिटर्न:

बूलियन

यदि इस स्नैपशॉट में कोई संतान है तो सत्य है; अन्यथा झूठ.

DataSnapshot.toJSON()

इस ऑब्जेक्ट का JSON-क्रमबद्ध प्रतिनिधित्व लौटाता है।

हस्ताक्षर:

toJSON(): object | null;

रिटर्न:

वस्तु | व्यर्थ

डेटास्नैपशॉट.वैल()

DataSnapshot से जावास्क्रिप्ट मान निकालता है .

डेटा DataSnapshot में डेटा पर निर्भर करता है , val() विधि एक स्केलर प्रकार (स्ट्रिंग, संख्या, या बूलियन), एक सरणी, या एक ऑब्जेक्ट लौटा सकती है। यह शून्य भी लौट सकता है, यह दर्शाता है कि DataSnapshot खाली है (इसमें कोई डेटा नहीं है)।

हस्ताक्षर:

val(): any;

रिटर्न:

कोई

डेटा स्नैपशॉट की सामग्री जावास्क्रिप्ट मान (ऑब्जेक्ट, ऐरे, स्ट्रिंग, संख्या, बूलियन, या null ) के रूप में ).