简析Js对象的封装与实践

这是js最原始的对象构造方法,非常粗略,

</pre><pre name="code" class="javascript">function testObject() {
				var o1 = new Object();
				o1.uname = 'zhangsan';
				o1.age = 18;
				o1.fav = ['足球', '篮球', '乒乓球'];
				o1.run = function() {
					alert(" GOGOGO ");
				}
				o1.run()  //执行run方法
			}

进阶的工厂类 创建对象的方法


function factory(uname, pwd, realname) {
				var o = {};
				o.uname = uname;
				o.pwd = pwd;
				o.realname = realname;
				o.age = 18;
				o.run = function() {
					alert(" A A A");
				}
				var fav = ['足球', '篮球', '乒乓球'];
				return o;
			}

			function testFactory() {
				var u1 = factory('zhangsan', '123456', '张三');
				alert(u1.fav);
			}

不过个人感觉前两种方法都不是太好,不太符合对象的封装特点,所以个人写了一个最终极版的js对象封装方法,和java不一样,js采用原型的方式来对对象封装相应的方法方法,可以自由的设置get/set,还有 对象构造方法constructor方法,toString等,相对来说较为方便,一比较推荐大家使用

function Person(name, age) {
				this.name = name;
				this.age = age;
                                this.sayName = function(){ 
                                alert(this.name); 
			}
			};
			Person.prototype.constructor = Person;
			Person.prototype.setAge = function(age) {
				this.age = age;
			};
			Person.prototype.setName = function(name) {
				this.name = name;
			};
			Person.prototype.getAge = function() {
				return this.age;
			};
			Person.prototype.getName = function() {
				return this.name;
			};
			var t = new Person();
			t.setName("sss");
			alert(t.getName());

这是js最原始的对象构造方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值