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. docker 17.03 怎么配置 registry mirror ?2. html - 這種錯位的時間軸怎么布局,然后用css實現?3. javascript - 微信里的文章通常是怎么制作出來的?4. javascript - 七牛接口如何在前端調用?5. css3里rotate怎么實現如圖的效果6. javascript - 使用location.href進行頁面跳轉時,并不立即跳轉?7. HTML與HTML5的區別8. IOS app應用軟件的id號怎么查詢?比如百度貼吧的app-id=4779278139. css3安卓下效果卡10. javascript - 華為mate8,mate9手機,微信內置瀏覽器無法上傳文件。
