日期:2014-05-16  浏览次数:20376 次

js 使用apply方法来继承"类"

?

<html>
<head><title>简单用例:js 使用apply方法来继承"类"
 </title></head>
<body></body>
</html>

<script type="javascript"
>
ClassA =function(sColor) {
		this
.color = sColor;
		this
.sayColor=function() {
			alert(this
.color);
		}
	}
	ClassB = function(sColor,sName) {
		ClassA.apply(this
,arguments);             //apply(extjs中也有这种类似的方法) 用于继承ClassA的属性和方法    this
 是本身对象,arguments 是一个数组对象

		this
.name=sName;
		this
.sayName = function() {
			alert(this
.name);
		}
	}
	var
 classa = new
 ClassA();
	var
 classb = new
 ClassB();
	classa.color = "classA  red"
;
	classb.color = "classB  red"
;
	classb.name  = "classB  张三"
;
	classa.name  = "classA  张三"
;
	classb.sayName();  //ClassB 本生的方法    输出结果:ClassB 张三 ;

	classb.sayColor(); //ClassB 从ClassA 继承的方法 输出的结果: ClassB red;

	classa.sayColor(); //ClassA 本身的方法   输出的结果: ClassA red

	classa.sayName();  //没有此方法 无法输出的。