javascript - 如何對一個變量綁定回調函數
問題描述
Javascript可以給一個變量綁定回調函數嗎?即:當這個變量的值變化,觸發(fā)回調函數,執(zhí)行回調函數內的內容。
問題解答
回答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í)行想要的結果
回答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’); // 將你需要的變量設為obj的一個屬性 // 更改變量用obj.set()這個方法回答3:
js的set/get你可以在set方法里面添加你的邏輯代碼,這樣每次修改的時候就會觸發(fā)你的代碼
相關文章:
1. javascript - 我的站點貌似被別人克隆了, google 搜索特定文章,除了域名不一樣,其他的都一樣,如何解決?2. 求救一下,用新版的phpstudy,數據庫過段時間會消失是什么情況?3. php - 微信開發(fā)驗證服務器有效性4. javascript - js setTimeout在雙重for循環(huán)中如何使用?5. javascript - 在 vue里面用import引入js文件,結果為undefined6. 小程序怎么加外鏈,語句怎么寫!求救新手,開文檔沒發(fā)現(xiàn)7. python沒入門,請教一個問題8. java - idea創(chuàng)建多modules項目后,tomcat啟動失敗9. html - 爬蟲時出現(xiàn)“DNS lookup failed”,打開網頁卻沒問題,這是什么情況?10. php - mysql 模糊搜索問題
