打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
AOP面向切面编程

Aspect Oriented Programming 面向切面编程

目的:针对业务处理过程中的切面进行提取,面对的是处理过程中的某个步骤或阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果
 
特点:  无侵入!
 
常用:  埋点
 
实战: 
 
 1 // 比如计算所有函数谁最耗时,注意无侵入 2  3 function test() { 4     alert(2) 5     return 'me' 6 } 7  8 Function.prototype.before = function(fn) { 9     var _self = this;10     return function() {11         // this改变了   因为闭包的匿名报数 所以this执行window12         fn.apply(_self, arguments);13         return _self.apply(_self, arguments);14     }15 }16 Function.prototype.after = function(fn) {17     // after 先执行本身this 再执行回调18     var _self = this;19     return function() {20         var result = _self.apply(_self, arguments);21         fn.apply(_self, arguments);22         return result23     }24 }25 26 // 形成链式 因为第一个返回的是function  而after是挂载在Function的原型上的27 test.before(function() {28     alert(1)29 }).after(function() {30     alert(3)31 })()

 

 
具体的耗时计算,看官自己补上吧。这里主要讲思想了
 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
bind,call,apply模拟实现
全面理解javascript的caller,callee,call,apply概念
JavaScript实现抽象类-yaosansi's Blog
(译) 一篇非常不错的前端面试文章
如何面试前端工程师:Github很重要(转)
javascript之Function类型
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服