function defineReactive(obj, key, val) { Object.defineProperty(obj, key, { enumerable: true, configurable: true, get: function() { console.log('get'); return val; }, set: function(newVal) { console.log('set'); val += newVal; } }); } let obj = {name: 'æé¾å¤§å¥', say: 'ï¼å ¶å®æä¹åæ¯æç»æè¿ä¸ªæ¸¸æå¹¿åçï¼'}; Object.keys(obj).forEach(k => { defineReactive(obj, k, obj[k]); }); console.log(obj.name + obj.say); // obj.say = '忥æè¯ç©äºä¸ä¸ï¼åï¼å¥½çè¡ï¼è®å¥½ç©ç'; // console.log(obj.name + obj.say);