मैं जावास्क्रिप्ट में गेटर्स और सेटर्स का शोध कर रहा हूं और वे jQuery के $ .extend और अंडरस्कोर _ _extend जैसे ऑब्जेक्ट्स को विस्तारित करने के लिए फैल फ़ंक्शन के साथ कितनी अच्छी तरह से जाते हैं।जावास्क्रिप्ट गेटर्स/सेटर्स और ऑब्जेक्ट्स विस्तारित
var test = {
get size() { return this._size; },
set size(val) { this._size = val; },
}
test.size = "LARGE";
console.log(test.size);
//$.extend(test, { get size() { return "MEDIUM"; } });
_.extend(test, { get size() { return "MEDIUM"; } });
console.log(test.size);
test.size = "SMALL";
console.log(test.size);
Chrome और Firefox में मैं मिल:
LARGE
MEDIUM
SMALL
कोई मुझे बता सकते हैं कि वहाँ क्या हो रहा है कोड सेटअप इस प्रकार है? मूल सेटटर को कॉल करने के बाद, मूल गेटर भी बहाल किया जाता है?
मुझे लगता है कि लगता है गेटटर मूल सेटटर और गेटटर दोनों को प्रतिस्थापित करता है, और अंत में यह संपत्ति 'आकार' को "SMALL" पर सेट करता है। 'Console.log (this._size) करें;' अंत में और देखें कि आपको क्या मिलता है .. – JCOC611
@ JCOC611 - मुझे ऐसा नहीं लगता है। स्पष्टीकरण के लिए मेरा जवाब देखें। –