`
sxpyrgz
  • 浏览: 72460 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javascript Aop

阅读更多

源作者:司徒正美 http://www.cnblogs.com/rubylouvre/tag/javascript/ 

<script type="text/javascript">
function Person(){
	this.say =  function(name,lang){
		alert("我的名字叫做"+name+",专注于"+lang+"……");
	}
}
Aspects = function(){};
Aspects.prototype={
	before:function(target,method,advice){
		var original  = target[method];
		target[method] = function(){
		  (advice)();
		  original.apply(target, arguments);
		}
		return target
	},
	after:function(target,method,advice){
		var original  = target[method];
		target[method] = function(){
		  original.apply(target, arguments);
		  (advice)();
		}
		return target
	},
	around:function(target,method,advice){
		var original  = target[method];
		target[method] = function(){
			(advice)();
			original.apply(target, arguments);
			(advice)();
		}
		return target
	}
}
window.onload = function(){
	var t = new Person;
	var a = new Aspects;
	t = a.before(t,"say",function(){alert("请你介绍一下自己!")});
	alert("===========================")
	t.say("司徒正美","javascript");
}
</script>
该断程序主要用来进行JS方法重写,然后进行方法前后的方法拦截处理。
      		var k = 100,timer=null;
    		timer=setInterval(function(){
      			k = k - 2;
      			if(k>30) {
       				div.style.filter = "alpha(opacity="+k+")";
       				div.style.opacity = ""+k/100+"";
      			}
  	   	},10);
这一段程序主要用来,用户指定某个DIV显示时,可以用它进行渐透明的显示透明度
Function.prototype.extend = function(parentclass){
  	var bs    = function(){};
  	bs.prototype = parentclass.prototype;
  	this.prototype = new bs();
  	this.prototype.superClass = parentclass;
  	this.prototype.constructor = this;
}

  如果我们用PROTOTYPE进行继承的时候可能THIS指针指的不正确,可以通过以上解决THIS指针的指向

 

 

分享到:
评论

相关推荐

    JavaScript AOP编程实例

    JavaScript AOP(面向切面编程)是一种编程范式,它允许开发者把横切关注点(cross-cutting concerns)从业务逻辑代码中分离出来。在面向对象编程(OOP)中,通常一个对象会处理与其核心功能直接相关的事务,而AOP使...

    AOP基本功能在JavaScript中的研究和实现.pdf

    "AOP基本功能在JavaScript中的研究和实现" 随着Web2.0时代的到来,Web应用的规模和复杂度不断增加,对应的JavaScript软件也变得越来越复杂。因此,有必要对JavaScript软件编程方法进行研究。本文首先对JavaScript ...

    javascript AOP 实现ajax回调函数使用比较方便

    JavaScript AOP(面向切面编程)是一种编程范式,它允许开发者在不修改原有代码的情况下,插入新的功能或改变现有行为。在JavaScript中,AOP常用于管理代码的副作用,如日志记录、异常处理、性能监控等。在这个场景...

    JavaScript中AOP的实现与应用

    在了解JavaScript中的AOP(面向切面编程)之前,首先需要明确AOP的基本概念。AOP是一种编程范式,旨在将横切关注点(cross-cutting concerns)从业务逻辑中分离出来。横切关注点是那些对多个地方的代码造成影响的点...

    AOP面向切面编程的JavaScript实现

    在Java领域,Spring框架是AOP的典型代表,而在JavaScript中,虽然没有内置的支持,但可以通过一些库和技巧来实现类似的功能。 JavaScript AOP的实现通常依赖于两种主要技术:代理(Proxies)和装饰器(Decorators)...

    Javascript aop(面向切面编程)之around(环绕)分析

    inalFunc.apply(this, arguments);console.log("after function");}}var obj = {foo: function(){console.log...虽然实现不如成熟的 AOP 框架那样完善,但在特定场景下,JavaScript 的 AOP 仍然能够发挥很大的作用。

    基于js的简易aop框架

    “源码”标签表明这个项目包含了实现AOP框架的原始代码,对于学习和理解JavaScript AOP工作原理非常有价值。而“工具”标签可能意味着这个框架可以作为开发工具,帮助开发者更方便地在JavaScript应用中应用AOP概念。...

    decorator-aop:带有ES7装饰器的Javascript AOP

    装饰器-aop 使用ES7装饰器进行Java语言方面的编程。 安装 npm install decorator-aop 用法 将类分配给方面。 @Aspect.target(Example) class ExampleAspect extends Aspect { } 连接点 使用以下装饰器在方面上...

    JavaScript之AOP编程实例

    JavaScript AOP编程,即面向切面编程(Aspect-Oriented Programming),是一种编程范式,旨在将横切关注点(cross-cutting concerns)从业务逻辑代码中分离出来,提高模块化。横切关注点指的是分散在多处的、对于...

    javascript _aop

    JavaScript 面向切面编程(AOP,Aspect-Oriented Programming)是一种编程范式,旨在提高代码的可重用性和模块化。在传统的面向对象编程中,我们通常会将业务逻辑、数据处理和系统关注点(如日志、事务管理、错误...

    使用AOP改善javascript代码

    在JavaScript中,AOP同样能够提供代码重构、增强模块间解耦、代码复用等优点。下面将根据文档提供的内容,详细解释在JavaScript中如何使用AOP来改善代码。 1. 防止window.onload被二次覆盖 在JavaScript中,window....

    AOP编程技术分享

    AOP编程技术分享,包括iOS和javascript等多个平台实现

    JavaScript实现AOP详解(面向切面编程,装饰者模式)

    什么是AOP? AOP(面向切面编程)的主要...通常,在 JavaScript 中实现 AOP,都是指把一个函数“动态织入”到另外一个函数之中,具体的实现技术有很多,下面我用扩展 Function.prototype 来做到这一点。请看下面代码:

    ext进销存aop ioc ef

    1. EXT JS:EXT JS是一个基于JavaScript的开源UI库,主要用于构建富客户端Web应用程序。它提供了一套完整的组件模型,包括表格、面板、窗口、菜单等,使得开发者能够创建功能丰富的、交互性强的网页应用。EXT JS使用...

    商城系统源码,技术(Spring MVC AOP)+MyBatis+Ajax+JavaScript

    本文将详细解析标题和描述中提到的“商城系统源码”,以及其技术栈Spring MVC、AOP、MyBatis、Ajax和JavaScript,并结合文件名称"shop",探讨这些技术在构建一个商城系统中的应用。 首先,商城系统是电子商务平台的...

Global site tag (gtag.js) - Google Analytics