JS使用对象的defineProperty进行变量监控操作示例


Posted in Javascript onFebruary 02, 2019

本文实例讲述了JS使用对象的defineProperty进行变量监控操作。分享给大家供大家参考,具体如下:

以前觉得检测变量angular的$watch还挺好用的,但是一旦离开angular就无法下手了,今天看到一个方法,觉得挺好的,可能还

有别的办法,我会继续探索的

贴上代码:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
var data = {key:1};
Object.defineProperty(data, "key", {
set: function(value) {
value++
console.log(value)
}
});
// window.onload = function(){
// data.key = 2;
// data.key = 3;
// }
var num = 0;
var timer = setInterval(function(){
data.key = num;
num++;
},2000)
</script>
</body>
</html>

这样效果就出来了,截个图

JS使用对象的defineProperty进行变量监控操作示例

每隔两秒会打印一次,哈哈

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
在JavaScript中遭遇级联表达式陷阱
Mar 08 Javascript
用js查找法实现当前栏目的高亮显示的代码
Nov 24 Javascript
在JavaScript里防止事件函数高频触发和高频调用的方法
Sep 06 Javascript
js限制input标签中只能输入中文
Jun 26 Javascript
jQuery实现带有上下控制按钮的简单多行滚屏效果代码
Sep 04 Javascript
js实现正则匹配中文标点符号的方法
Dec 23 Javascript
深入解析Backbone.js框架的依赖库Underscore.js的作用
May 07 Javascript
js对象实例详解(JavaScript对象深度剖析,深度理解js对象)
Sep 21 Javascript
webpack打包node.js后端项目的方法
Mar 10 Javascript
如何在Vue.js中实现标签页组件详解
Jan 02 Javascript
DatePickerDialog 自定义样式及使用全解
Jul 09 Javascript
微信小程序getLocation 需要在app.json中声明permission字段
Mar 03 Javascript
详解Vue webapp项目通过HBulider打包原生APP(vue+webpack+HBulider)
Feb 02 #Javascript
通过cordova将vue项目打包为webapp的方法
Feb 02 #Javascript
用Cordova打包Vue项目的方法步骤
Feb 02 #Javascript
JS实现数组去重及数组内对象去重功能示例
Feb 02 #Javascript
JS实现的Object数组去重功能示例【数组成员为Object对象】
Feb 01 #Javascript
JavaScript动态创建二维数组的方法示例
Feb 01 #Javascript
Electron 如何调用本地模块的方法
Feb 01 #Javascript
You might like
PHP时间戳使用实例代码
2008/06/07 PHP
PHP求最大子序列和的算法实现
2011/06/24 PHP
PHP获取时间排除周六、周日的两个方法
2014/06/30 PHP
PHP中模拟链表和链表的基本操作示例
2016/02/27 PHP
php实现PDO中捕获SQL语句错误的方法
2017/02/16 PHP
php适配器模式简单应用示例
2019/10/23 PHP
一段多浏览器的&quot;复制到剪贴板&quot;javascript代码
2007/03/27 Javascript
jquery ajax abort()的使用方法
2010/10/28 Javascript
JS模拟面向对象全解(一、类型及传递)
2011/07/13 Javascript
JavaScript实现页面滚动图片加载(仿lazyload效果)
2011/07/22 Javascript
解析jquery获取父窗口的元素
2013/06/26 Javascript
js jquery获取当前元素的兄弟级 上一个 下一个元素
2015/09/01 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
标准的js无缝滚动效果
2016/08/30 Javascript
canvas实现手机端用来上传用户头像的代码
2016/10/20 Javascript
原生js编写基于面向对象的分页组件
2016/12/05 Javascript
nodejs利用http模块实现银行卡所属银行查询和骚扰电话验证示例
2016/12/30 NodeJs
详解javascript中对数据格式化的思考
2017/01/23 Javascript
详解如何使用微信小程序云函数发送短信验证码
2019/03/13 Javascript
vue实现移动端省市区选择
2019/09/27 Javascript
JS控制GIF图片的停止与显示
2019/10/24 Javascript
Python urlopen 使用小示例
2008/09/06 Python
纯CSS3实现圆角效果(含IE兼容解决方法)
2014/05/07 HTML / CSS
Bibloo荷兰:女士、男士和儿童的服装、鞋子和配饰
2019/02/25 全球购物
网上签名寄语活动留言
2014/01/18 职场文书
横幅标语大全
2014/06/17 职场文书
人力资源管理毕业生自荐信
2014/06/26 职场文书
个人租房协议书样本
2014/10/01 职场文书
欠款纠纷起诉状
2015/05/19 职场文书
2015年暑假生活总结
2015/07/13 职场文书
企业安全生产检查制度
2015/08/06 职场文书
Nginx开启Brotli压缩算法实现过程详解
2021/03/31 Servers
JavaScript嵌入百度地图API的最详细方法
2021/04/16 Javascript
在Centos 8.0中安装Redis服务器的教程详解
2022/03/21 Redis
Spring Cloud OAuth2实现自定义token返回格式
2022/06/25 Java/Android
Windows11 Insider Preview Build 25206今日发布 更新内容汇总
2022/09/23 数码科技