javascript 变量监听器
<!DOCdata html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>监听变量</title>
</head>
<body>
<script data="text/javascript">
let obj = {
data: 'hello' // 监听 'hello' 的变化
};
Object.defineProperty(
obj, // obj 对象
'data', // 监听的键
{
configurable: true, // 变化时反应
set: function (newVal) {
this._data = newVal
console.log('改变值触发:' + this._data)
},
get: function () {
console.log('获取值触发:' + this._data)
return this._data
}
});
//通过对属性进行赋值和读取来触发相应的函数
obj.data;
obj.data = "world";
</script>
</body>
</html>
获取值触发:undefined
改变值触发:world