नियम. MapDiff
MapDiff प्रकार.
MapDiff टाइप, दो की तुलना का नतीजा दिखाता है नियमों.Map ऑब्जेक्ट.
अंतर बनाने में इस्तेमाल करने के लिए, MapDiff लिटरल नहीं है. MapDiff ऑब्जेक्ट इन्हें rules.Map#diff फ़ंक्शन पर कॉल के ज़रिए दिखाया जाता है.
नीचे बताए गए MapDiff फ़ंक्शन को नियमों.Map#diff. सभी MapDiff फ़ंक्शन नियम.सेट दिखाते हैं मैप ऑब्जेक्ट के बीच तुलना करके ऑब्जेक्ट लिस्टिंग की कुंजियां.
// Compare two Map objects and return whether the key "a" has been // affected; that is, key "a" was added or removed, or its value was updated. request.resource.data.diff(resource.data).affectedKeys().hasOnly(["a"]);
तरीके
जोड़ी गई कुंजियां
addedKeys() फ़ंक्शन, नियम.सेट दिखाता है
नियम.सेट दिखाता है, जिसमें मैप कॉलिंग से जुड़ी सभी कुंजियां शामिल होती हैं
diff()
में शामिल है कि diff()
को पास किया गया मैप
नहीं.
- लौटाए गए आइटम
-
non-null rules.Set
, नियमों.Map में जोड़ी गई कुंजियों की सूची:Map.diff()
फ़ंक्शन.
उदाहरण
{"a":1}.diff({}).addedKeys() == ["a"].toSet()
प्रभावित कुंजियां
प्रभावितKeys() नियम.सेट लौटाता है
नियम.सेट दिखाता है, जिसमें वे सभी कुंजियां दिखती हैं जिन्हें जोड़ा गया है,
की तुलना में मैप कॉलिंग diff()
से हटाई या बदली गई
मैप diff()
को पास कर दिया गया है. यह फ़ंक्शन, सेट
MapDiff.addedKeys()
के मिले-जुले नतीजों के बराबर,
MapDiff.removedKeys()
और MapDiff.changedKeys()
.
({"a":0, "c":0, "u":0}).diff({"r":0, "c":1, "u": 0}).affectedKeys() == ["a", "r", "c"].toSet()
- लौटाए गए आइटम
-
non-null rules.Set
,इसमें जोड़ी गई, हटाई गई या इससे बदली गई कुंजियों की सूचीMap.diff()
फ़ंक्शन में पास किया गया नियमों.Map
बदली गई कुंजियां
changesKeys() का इस्तेमाल करके, नियमों.Set पैरामीटर को दिखाया जाता है
नियम.सेट दिखाता है, जिसमें मैप और दोनों में दिखने वाली सभी कुंजियों की सूची होती है
diff()
को कॉल किया गया और मैप diff()
को पास कर दिया गया, लेकिन
जिनके मान समान नहीं हैं.
- लौटाए गए आइटम
-
non-null rules.Set
, दोनों नियमों.Map में दिखने वाली कुंजियों की सूची होती है लेकिन जिनके मान बराबर नहीं हैं.
उदाहरण
{"a":0}.diff({"a":1, "b":4}).changedKeys() == ["a"].toSet()
हटाई गई कुंजियां
removedKeys() का इस्तेमाल करके, नियमों.Set को लौटाया जाता है
नियम.सेट दिखाता है, जिसमें मैप कॉलिंग से जुड़ी सभी कुंजियां शामिल होती हैं
diff()
में उस मैप की तुलना में शामिल नहीं है जिसे
diff()
.
- लौटाए गए आइटम
-
non-null rules.Set
, नियमों.Map से हटाई गई कुंजियों की सूचीMap.diff()
फ़ंक्शन में पास किया गया.
उदाहरण
{}.diff({"a":1}).removedKeys() == ["a"].toSet()
नहीं बदली गई कुंजियां
AttributionKeys() का इस्तेमाल करके नियमों.Set को लौटाया जाता है
नियम.सेट दिखाता है, जिसमें मैप और दोनों में दिखने वाली सभी कुंजियों की सूची होती है
diff()
को कॉल किया गया और मैप diff()
के पास पहुंच गया, और
जिनके मान बराबर हैं.
- लौटाए गए आइटम
-
non-null rules.Set
, दोनों नियमों.Map में दिखने वाली कुंजियों की सूची होती है लेकिन जिनके मान बराबर हैं.
उदाहरण
{"a": 0}.diff({"a":0}).unchangedKeys() == ["a"].toSet()