2019年1月17日 星期四

【Ch6物件】Object.defineProperty:Get、Set 雙向數據綁定


Object.defineProperty可以設定Get和Set:
  • 當物件被更動時,會觸動Set函式
  • 當物件被啟用時,會觸動Get函式
  • 雙向數據綁定就是可以使用Get函式
 Object.defineProperty(obj, "context", {
        set(val) {   //當有人嘗試更改obj.context的內容時就會觸以下事件
            document.getElementById("input").value = val  
            //把obj.context被更改的新值傳入輸入框(input)
            document.getElementById("display").innerHTML = val
            //把obj.context被更改的新值傳入顯示區(display)
        }
    })

沒有留言:

張貼留言

【JavaScript】用物件Mapping的方法

If的寫法 我們希望當變數是a時就回傳1,變數是b就回傳2,變數是c就會回傳3,一般寫法就是用if,但是這樣會很冗 ​ // IF style var word if(word == 'a'){ word = 1 } else if...