javascript - 如何對一個變量綁定回調(diào)函數(shù)
問題描述
Javascript可以給一個變量綁定回調(diào)函數(shù)嗎?即:當這個變量的值變化,觸發(fā)回調(diào)函數(shù),執(zhí)行回調(diào)函數(shù)內(nèi)的內(nèi)容。
問題解答
回答1:var test = { _age : 0, methods:function(a){
console.log('發(fā)生變化了值為:'+a);
},//_Age的讀寫set age(age) {
if(age!=this._age){ this.methods(age); this._age = age;}},
get age() {return this._age;} };可以利用對象的set和get方法來執(zhí)行想要的結(jié)果
回答2:不能直接實現(xiàn)。但是可以通過其他方式實現(xiàn)。
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’); // 將你需要的變量設(shè)為obj的一個屬性 // 更改變量用obj.set()這個方法回答3:
js的set/get你可以在set方法里面添加你的邏輯代碼,這樣每次修改的時候就會觸發(fā)你的代碼
相關(guān)文章:
1. css3 - [CSS] 動畫效果 3D翻轉(zhuǎn)bug2. python小白的基礎(chǔ)問題 關(guān)于while循環(huán)的嵌套3. MySQL客戶端吃掉了SQL注解?4. javascript - JS設(shè)置Video視頻對象的currentTime時出現(xiàn)了問題,IE,Edge,火狐,都可以設(shè)置,反而chrom卻...5. 求大神幫我看看是哪里寫錯了 感謝細心解答6. javascript - 百度echarts series數(shù)據(jù)更新問題7. python - Django分頁和查詢參數(shù)的問題8. javascript - 圖片能在網(wǎng)站顯示,但控制臺仍舊報錯403 (Forbidden)9. php自學(xué)從哪里開始?10. phpstady在win10上運行
