在不修改他人代码的情况下加上自己的内容

本文介绍了一种在不修改原有代码的基础上添加新逻辑的方法。通过封装特定的方法,如agocb和thencb,可以在原有函数调用前后执行自定义操作。此技巧适用于需要在现有业务流程中插入额外步骤但又不能直接修改源代码的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        很多人写代码是不是要担心覆盖别人代码,造成各种不可预估的bug!今天小编来告诉你们,如何在不修改别人代码的情况下,加入自己的逻辑!除了用第三方变量保存原来方法引用地址,还有一种方法!

          

        上面封装了2个方法,第一个方法是在调用这个函数前添加额外条件等变量。第二个方法大家是不是很熟悉,es6的链式结构就是用了相同原理,表示方法触发后,可以进行的操作。接下来我们只需要调用方法即可。

        

        假设原来那个代码是test这个方法,我们不能改变它里面的内容。我们需要在test方法调用前进行一些操作,比如传参,赋值等等,我们就可以封装agocb方法,然后再调用ago方法。在test方法调用后,我们需要自己加一些东西,我们就需要封装thencb方法,然后调用then方法。你会发现,最后,当我们调用test()方法时候,虽然同名,但是输出结果不再是2,而是1,2,3。

        

        于是,我们完成了在没有修改原来方法的情况下,新增了自己的内容,最后调用的方法名还是原来那个,一切都很完美!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值