通过Object.defineProperty对数据的 获取 和 修改 进行劫持。
<body><input type="text" id="userName"/><h2 id="getName"></h2></body><script>let obj = {};Object.defineProperty(obj,'name',{get:function(){console.log('name获取');return obj.name;},set:function(val){console.log('name改变');document.querySelector('#getName').innerText = val}})//添加一个input事件document.querySelector('#userName').addEventListener('input',function(){obj.name = event.target.value;})</script>
