实现双向绑定是利用了Object.defineProperty() 方法。
语法: Object.defineProperty(obj, prop, descriptor)
参数说明:
1 obj:必需。目标对象
2 prop:必需。需定义或修改的属性的名字
3 descriptor:必需。目标属性所拥有的特性
<input type="text" id="input"/>
<span id="showText"></span>
<script>
var obj = {};
Object.defineProperty(obj,"text",{
get:function(){
return obj;
},
set:function(val){
document.getElementById("input").value = val;
document.getElementById("showText").innerHTML = val;
}
})
document.addEventListener("keyup",function(e){
obj.text = e.target.value;
})
</script>