JS装饰器模式
2024-08-28 06:31:27
装饰器模式:在不改变原对象的基础上,通过对其进行包装拓展(添加属性或者方法),保护原有功能的完整性
需要条件:原对象,新内容(属性/方法)
个人理解:重新实现一下,原对象的方法,在方法内容,先执行原对象的方法,再执行新内容
示例代码如下:
//装饰者
/*
input:原对象
fn:新内容(属性或方法)
*/
var decorator = function (input,fn) {
//获取事件源
var input = document.getElementById(input);
//判断事件源,是否绑定某一事件
if(typeof input.onclick === 'function'){
//缓存事件源的原有回调函数
var oldClick = input.onclick;
//为事件源定义新的回调函数
input.onclick = function () {
//事件源,原有回调函数
oldClick();
//执行事件源新增回调函数
fn();
}
}
}
最新文章
- 服务治理要先于SOA
- 1001 数组中和等于K的数对 1090 3个数和为0
- Lua 学习笔记(十一)元表与元方法
- Windows Phone 8.1低功耗蓝牙开发-Nokia Treasure Tag
- POJ1014Dividing[多重背包可行性]
- python time模块
- python机器学习《回归 一》
- 必须知道的.NET FrameWork
- 《Python基础教程(第二版)》学习笔记 ->; 第七章 更加抽象
- winfrom拷贝文件
- sublime Text3配置及快捷键、插件推荐总结
- Android_Training
- 项目整体说明及WBS练习
- 在CentOS上使用Jexus托管运行 ZKEACMS
- android ndk-build 编译静态库libxx.a 以及Android studio openssl 静态库配置(cmake)
- 05_python_字典
- openkm安装过程
- 使用Dom4解析xml
- mormot日志
- 分布式系统CAP定理