जहां तक मैं समझता हूं कि आप जावास्क्रिप्ट ऑब्जेक्ट गुणों पर बदलें चाहते हैं। जवाब नहीं है, जहां तक मुझे पता है, यह अस्तित्व में नहीं है।
लेकिन आप इस तरह से एक सेटर समारोह (अवधारणा का एक सबूत के रूप में) कर सकते हैं: '! कुछ नमस्ते विश्व को अपरिभाषित से बदल'
var element = {};
element.setProperty = function(property, value) {
if (typeof(element.onChange) === 'function') {
element.onChange(property, element[property], value);
}
element[property] = value;
};
element.onChange = function(property, oldValue, newValue) {
alert(property + ' changed from ' + oldValue + ' to ' + newValue);
};
element.setProperty('something', 'Hello world!');
अब आप के साथ एक बॉक्स मिलता है। और (element.something === 'Hello World!')
true
वापस आ जाएगा।
अगर आप अब कॉल:
element.setProperty('something', 'Goodbye world!');
आप 'कुछ नमस्ते विश्व से बदल के साथ एक बॉक्स प्राप्त करें! अलविदा दुनिया के लिए! '
बेशक आपको इस घटना को कैप्चर करना चाहते हैं तो आपको अपने सभी कोड में केवल setProperty
विधि के माध्यम से संपत्ति सेट करनी होगी!
संपादित करें:
भविष्य में किसी समय, आप Object.observe() उपयोग करने में सक्षम हो सकता है।
संपादित करें 2:
अब वहाँ भी proxies है।
आप कृपया इस बात की पुष्टि कर सके कि क्या आप वस्तु की विशेषता या DOM तत्व की विशेषता में परिवर्तन में परिवर्तन ट्रैक करने के लिए देख रहे हैं? धन्यवाद – Philar
http://stackoverflow.com/questions/4266852/how-do का डुप्लिकेट -i-play-a-sound-when-an-element-change-like-so-chat-do – nyuszika7h
@ Nyuszika7H मुझे ऐसा नहीं लगता: पी यह एक सामान्य प्रश्न है। – Adam