js最简单的双向绑定实例讲解


Posted in Javascript onJanuary 02, 2018

把代码复制放到页面里面运行看一下效果就好了

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
</head>
<body>
<input type="text" id="myinput" >
<script>
  function watch(obj,key,callback) {
    var old = obj[key];
    Object.defineProperty(obj,key,{
      set:function(val){
        var oldVal = old;
        old = val;
        callback(val,oldVal,this);
      },
      get:function(){
        return old;
      }
    });
  }
  var input = document.getElementById("myinput");
  var obj = {};
  watch(obj, "input",function (val) {
    input.value = val;
    console.log("这里是不管view层,还是module层修改后的回调,最后设置的值是"+val);
  });
  input.onkeyup = function () {
    obj.input = input.value;
  };
</script>
</body>
</html>

代码测试

修改了input内的值,会看到控制台打印出新的值

在控制台修改obj.input的值,input框内的值也会跟着改变,也会触发事件,获取新值

以上这篇js最简单的双向绑定实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Js获取事件对象代码
Aug 05 Javascript
JS获取select-option-text_value的方法
Dec 26 Javascript
javascript正则匹配汉字、数字、字母、下划线
Apr 10 Javascript
JS兼容浏览器的导出Excel(CSV)文件的方法
May 03 Javascript
通过点击jqgrid表格弹出需要的表格数据
Dec 02 Javascript
设置jQueryUI DatePicker默认语言为中文
Jun 04 Javascript
浅谈javascript:两种注释,声明变量,定义函数
Sep 29 Javascript
微信小程序的动画效果详解
Jan 18 Javascript
element el-input directive数字进行控制
Oct 11 Javascript
Vue数据绑定实例写法
Aug 06 Javascript
js中位数不足自动补位扩展padLeft、padRight实现代码
Apr 06 Javascript
前端框架ECharts dataset对数据可视化的高级管理
Dec 24 Javascript
js 将canvas生成图片保存,或直接保存一张图片的实现方法
Jan 02 #Javascript
js原生方法被覆盖,从新赋值原生的方法
Jan 02 #Javascript
JS实现验证码倒计时的注册页面
Jan 02 #Javascript
使用socket.io实现简单聊天室案例
Jan 02 #Javascript
使用socket.io制做简易WEB聊天室
Jan 02 #Javascript
AngularJS实现的简单拖拽功能示例
Jan 02 #Javascript
AngularJS实现的锚点楼层跳转功能示例
Jan 02 #Javascript
You might like
连接到txt文本的超链接,不直接打开而是点击后下载的处理方法
2009/07/01 PHP
在VS2008中编译MYSQL5.1.48的方法
2010/07/03 PHP
php+ajax做仿百度搜索下拉自动提示框(有实例)
2012/08/21 PHP
详解Yii2高级版引入bootstrap.js的一个办法
2017/03/21 PHP
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
js 调用本地exe的例子(支持IE内核的浏览器)
2012/12/26 Javascript
jQuery实例—选项卡的简单实现(js源码和jQuery)
2016/06/14 Javascript
Javascript中prototype的使用详解
2016/06/18 Javascript
js自调用匿名函数的三种写法(推荐)
2016/08/19 Javascript
基于JS快速实现导航下拉菜单动画效果附源码下载
2016/10/27 Javascript
基于jQuery实现选项卡效果
2017/01/04 Javascript
新版vue-cli模板下本地开发环境使用node服务器跨域的方法
2018/04/03 Javascript
解决Mac安装thrift因bison报错的问题
2018/05/17 Javascript
JavaScript多态与封装实例分析
2018/07/27 Javascript
Vue.js@2.6.10更新内置错误处机制Fundebug同步支持相应错误监控
2019/05/13 Javascript
深入学习JavaScript中的bom
2019/05/27 Javascript
js获取 gif 的帧数的代码实例
2019/09/10 Javascript
基于Vue实现微前端的示例代码
2020/04/24 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
python操作mysql中文显示乱码的解决方法
2014/10/11 Python
给 TensorFlow 变量进行赋值的方式
2020/02/10 Python
Python3 filecmp模块测试比较文件原理解析
2020/03/23 Python
新手常见Python错误及异常解决处理方案
2020/06/18 Python
基于pytorch中的Sequential用法说明
2020/06/24 Python
Python中qutip用法示例详解
2020/10/02 Python
全面总结使用CSS实现水平垂直居中效果的方法
2016/03/10 HTML / CSS
打造完美自荐信
2014/01/24 职场文书
领导干部“四风”问题批评与自我批评材料
2014/09/24 职场文书
党员四风问题对照检查材料
2014/09/27 职场文书
教师正风肃纪剖析材料
2014/10/20 职场文书
以权谋私检举信范文
2015/03/02 职场文书
结婚通知短信怎么写
2015/04/17 职场文书
产品调价通知函
2015/04/20 职场文书
导游词之西安骊山
2019/12/03 职场文书
奥特曼十大神器:奥特手镯在榜,第一是贝利亚的神器
2022/03/18 日漫
Linux中文件的基本属性介绍
2022/06/01 Servers