概念
(AOP)面向切面编程,主要实现的目的是针对业务处理过程中的切面进行提取,它所面对的是处理过程的某个步骤或者阶段,以获得逻辑过程中各部分之间低耦合性的隔离效果.也就是说,在业务逻辑开始之前与结束之后进行操作,不干扰业务逻辑的具体过程.
举个例子:计算一个函数的执行时间。
普通方法:
function test() { var start = new Date(); alert(2); var end = new Date(); console.log(end - start); };
但是这样的话是不是每个函数都要加上start,end,这样会很麻烦而且说不定别人也会有start变量,所以我们就需要用面向切面编程
function test(){ alert(2); }Function.prototype.before = function(fn){ var __self = this; return function(){ fn.apply(__self,arguments); return __self.apply(__self,arguments); } }Function.prototype.after = function(fn){ var __self = this; return function(){ __self.apply(__self,arguments); fn.apply(this,arguments); } } test.before(function(){ return start = new Date(); }).after(function(){ return end = new Date(); })();console.log(end - start);
作者:我竟无言以对_1202
链接:https://www.jianshu.com/p/63edc2be2209
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦