javascript - 如何对一个变量绑定回调函数
问题描述
Javascript可以给一个变量绑定回调函数吗?即:当这个变量的值变化,触发回调函数,执行回调函数内的内容。
问题解答
回答1:var test = { _age : 0, methods:function(a){
console.log('发生变化了值为:'+a);
},//_Age的读写set age(age) {
if(age!=this._age){ this.methods(age); this._age = age;}},
get age() {return this._age;} };可以利用对象的set和get方法来执行想要的结果
回答2:不能直接实现。但是可以通过其他方式实现。
var obj = {set: function (key, value) { if([’set’, ’change’].indexOf(key) > -1) return; this[key] = value; this.change();}, }; obj.change = function(){alert(1)console.log(this); } obj.set(’name’, ’segmentfault’); // 将你需要的变量设为obj的一个属性 // 更改变量用obj.set()这个方法回答3:
js的set/get你可以在set方法里面添加你的逻辑代码,这样每次修改的时候就会触发你的代码
相关文章:
1. android - 为 AppBarLayout 设置的背景图片 TransitionDrawable 为什么只在第一次打开的时候有效?2. mysql - 我的myeclipse一直连显示数据库连接失败,不知道为什么3. docker网络端口映射,没有方便点的操作方法么?4. nginx - 关于javaweb项目瘦身问题,前期开发后,发现项目占用存贮空间太大,差不多1.2个G,怎么实现瘦身,动态页面主要是jsp。5. java - 请教一个IO的问题6. angular.js - angular内容过长展开收起效果7. java - 一个泛型标签问题8. node.js - 问个问题 Uncaught (in promise)9. jquery - 移动端如何写弹性效果10. node.js - 安装puer前端服务器不成功

网公网安备