JavaScript实现双向绑定Object.defineProperty()

141 阅读1分钟
<div>
    <input type="text" id="txt">
    <p id="vm"></p>
</div>
</body>
<script>
    var obj={};
    Object.defineProperty(obj,'txt',{
        get:function () {
            return obj;
        },
        set:function (newValue) {
            document.getElementById('txt').value=newValue;
            document.getElementById('vm').innerHTML=newValue;
        }
    })
    document.addEventListener('keyup',function (e) {
        obj.txt=e.target.value;

    })
</script>