为了账号安全,请及时绑定邮箱和手机立即绑定

面向切面编程

标签:
前端工具

概念

(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 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消