js 类的成员变量和方法

面向对象的基础就是定义类,js 也有类的概念,可以通过function关键来定义或者{}来定义。

下面例子主要测试js 类中的成员变量和方法的使用。

function Clazz(){
	this.pubVar = 'public var';// 共有成员变量,类不可访问
	var priVar = 'private var';// 内部私有成员变量,外部不可调用
	Clazz.obj = 'test';// 类变量,对象不可访问
	Clazz.prototype.obj2 = 'test2';
	
	function priMethod(){// 内部私有方法,外部不可调用
		alert("私有方法");
	}
	
	this.specialMethod= function(){// 特权方法,可访问所有成员
		alert("pub:"+ this.pubVar+" |pri:"+priVar+" |obj:"+Clazz.obj+" |obj2:"+Clazz.prototype.obj2);
		//pub:public var |pri:private var |obj:test |obj2:test2
	}
	
	Clazz.prototype.pubMethod = function(){// 公有方法,可访问所有成员
		alert("pub:"+this.pubVar+" |pri:"+priVar+" |obj:"+Clazz.obj+" |obj2:"+Clazz.prototype.obj2);
		//pub:public var |pri:private var |obj:test |obj2:test2
	}
	
	Clazz.staticMethod = function(){// 静态方法
		alert("pub:"+this.pubVar+" |pri:"+priVar+" |obj:"+Clazz.obj+" |obj2:"+Clazz.prototype.obj2);
		//pub:undefined |pri:private var |obj:test |obj2:test2
	}
}
var c = new Clazz();
// 用对象去访问成员变量
//alert("pub:"+c.pubVar+" |pri:"+c.priVar+" |obj:"+c.obj+" |obj2:"+c.obj2);//pub:public var |pri:undefined |obj:undefined |obj2:test2
//document.writeln("pub:"+c.pubVar+" |pri:"+c.priVar+" |obj:"+c.obj+" |obj2:"+c.obj2+"<br/>");
// 用类名去访问成员变量
//alert("<pub:"+Clazz.pubVar+" |pri:"+Clazz.priVar+" |obj:"+Clazz.obj+" |obj2:"+Clazz.obj2);//pub:undefined |pri:undefined |obj:test |obj2:undefined
//document.writeln("pub:"+Clazz.pubVar+" |pri:"+Clazz.priVar+" |obj:"+Clazz.obj+" |obj2:"+Clazz.obj2+"<br/>");

// 用对象去访问方法
//c.priMethod();// 出错:对象不支持此属性或方法
c.specialMethod();
c.pubMethod();
Clazz.staticMethod();


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值