v-model 实现的原理

  angular 是 mvc 的实现原理,ng-model 是靠脏值检测实现的

  脏值检测:for 循环一个个对比

  vue 靠的是数据劫持 和 发布者,订阅者模式

  数据劫持:Object.defineProperty() 这个方法

  delete 关键字,主要用于删除

  生成对象方法:

    1. 字面量定义  var a = {}  或  var a = new Object()

    2. 通过 Object.defineProperty() 方法

  案例:

    var a = {age:20};

    a.name =  'zhang'  // 定义对象的属性

    a.age = 30  // 修改对象的属性

  Object.defineProperty() 给一个对象定义新属性或者修改一个对象的属性;

  

  confinguable  配置选项,值为 true,代表这个属性可删除

  enumerable  代表可枚举,值为true,可以使用 for in 遍历

  value  这个属性的值

  writeable  这个属性可以更改

  注意:如果有了 get 和 set 方法,就不能有 writable 和 value 属性

最新文章

  1. 在MongoDB的MapReduce上踩过的坑
  2. jq focus 在火狐(Firefox)下无效
  3. 从PHP底层源码去深入理解数组,并用C模拟PHP关联数组(原创)
  4. mysql主从复制操作步骤
  5. 疑似easyui本身bug:easyui时间控件问题,试了几个版本都不行
  6. .Net中的并行编程-5.流水线模型实战
  7. RequireJS使用注意地方
  8. Devexpress VCL Build v2014 vol 15.2.3 发布
  9. 方程ax2+bx+c=0;一元二次方程。求根
  10. maven时候Embedded error: error in opening zip file
  11. ASP.NET MVC4学习笔记路由系统概念与应用篇
  12. 搜狗2015校园招聘javaproject师面经
  13. ubuntu系统AndroidStudio修改内存大小
  14. 『性能』测试一下 MSSqlHelper 的性能
  15. Oracle查看表实际占用空间和实际行数
  16. Activity的启动流程
  17. php接入支付宝的流程(转载)
  18. 【.NET】 C# 时间戳和DataTime 互相转换
  19. Linux (Redhat / Fedora / CentOS) 更改 hostname 的方式
  20. Mac下多版本JDK安装

热门文章

  1. MySQL中自定义排序
  2. Jquery实现对select的操作
  3. 基于 docker容器搭建机器学习环境
  4. 跑满带宽的一款百度网盘下载工具 : PanDownload
  5. TypeScript如何添加自定义d.ts文件(转)
  6. 20199319《Linux内核原理与分析》第十一周作业
  7. Idea 汉化后定位和系统设置打不开到问题
  8. 【AGC005 F】Many Easy Problems
  9. 【spoj 5971】lcmsum
  10. uestc summer training #2