जावास्क्रिप्ट Object.freeze () विधि किसी ऑब्जेक्ट को जमा देती है।
एक जमे हुए वस्तु को अब नहीं बदला जा सकता है। एक वस्तु को ठंड से बचाता है:
- ऑब्जेक्ट में नए गुण जोड़े जाने से।
- वस्तु से हटाए जाने वाले मौजूदा गुण।
- मौजूदा गुणों की गणना, विन्यास, या लेखन क्षमता को बदलना।
- मौजूदा वस्तु गुणों और प्रोटोटाइप के मूल्यों को बदलना।
freeze()विधि का सिंटैक्स है:
Object.freeze(obj)
freeze()विधि, एक स्थिर विधि जा रहा है, का उपयोग करते हुए कहा जाता है Objectवर्ग के नाम।
फ्रीज () पैरामीटर
freeze()विधि में लेता है:
- obj - जमने की वस्तु।
फ्रीज से वापसी मूल्य ()
- वह वस्तु जो फंक्शन में पास की गई थी।
नोट :
- जमे हुए वस्तुओं के गुणों के सेट से जोड़ने या हटाने का कोई भी प्रयास या तो चुपचाप या फेंकने में विफल होगा
TypeError(ज्यादातर जब सख्त मोड में होता है)। - सील की गई वस्तुओं
Object.seal()में उनके मौजूदा गुण बदल सकते हैं जबकिObject.freeze()मौजूदा गुण अपरिवर्तनीय बनाते हैं।
उदाहरण: फ्रीज का उपयोग करना ()
let obj = ( prop: function () (), foo: "bar", ); let o = Object.freeze(obj); console.log(o == obj); // True -> Returns the same object console.log(Object.isFrozen(obj)); // true // changes will fail silently obj.foo = "bar1"; console.log(obj.foo); // bar // does not add silently obj.new_foo = "bar"; console.log(obj.new_foo); // undefined // Following will also throw error // Object.setPrototypeOf(obj, ( x: 20 ))
आउटपुट
सच सच बार अपरिभाषित
नोट : Object.freeze(obj)केवल के तत्काल गुणों पर लागू होता है obj। यदि उन गुणों का मान स्वयं ऑब्जेक्ट्स हैं, तो वे ऑब्जेक्ट्स जमे हुए नहीं हैं और पुन: असाइनमेंट कार्यों को हटाने, मान बढ़ाने या प्रॉपर्टी के लक्ष्य हो सकते हैं।
अनुशंसित पढ़ना: जावास्क्रिप्ट ऑब्जेक्ट सील ()








