几种常用的JS类定义方法
2015-06-24 22:18
615 查看
// 方法1 对象直接量
var obj1 = {
v1 : "",
get_v1 : function() {
return
this.v1;
},
set_v1 : function(v) {
this.v1
= v;
}
};
// 方法2 定义函数对象
var Obj = function() {
var v1 = "";
this.get_v1 = function() {
return
this.v1;
};
this.set_v1 = function(v) {
this.v1
= v;
}
};
// 方法3 原型继承
var Obj3 = new Function();
Obj3.prototype = {
v1 : "",
get_v1 : function() {
return
this.v1;
},
set_v1 : function(v) {
this.v1
= v;
}
};
// 方法4 工厂模式
function loadObj() {
var tmp = new Object();
tmp.v1 = "";
tmp.get_v1 = function() {
return
tmp.v1;
};
tmp.set_v1 = function(v) {
tmp.v1
= v;
};
return tmp;
}
obj1.set_v1('hello1');
alert(obj1.get_v1());
var obj2 = new Obj();
obj2.set_v1('hello2');
alert(obj2.get_v1());
var obj3 = new Obj();
obj3.set_v1('hello3');
alert(obj3.get_v1());
var obj4 = loadObj();
obj4.set_v1('hello4');
alert(obj4.get_v1());
alert(obj1);
alert(obj2);
alert(obj3);
alert(obj4);
var obj1 = {
v1 : "",
get_v1 : function() {
return
this.v1;
},
set_v1 : function(v) {
this.v1
= v;
}
};
// 方法2 定义函数对象
var Obj = function() {
var v1 = "";
this.get_v1 = function() {
return
this.v1;
};
this.set_v1 = function(v) {
this.v1
= v;
}
};
// 方法3 原型继承
var Obj3 = new Function();
Obj3.prototype = {
v1 : "",
get_v1 : function() {
return
this.v1;
},
set_v1 : function(v) {
this.v1
= v;
}
};
// 方法4 工厂模式
function loadObj() {
var tmp = new Object();
tmp.v1 = "";
tmp.get_v1 = function() {
return
tmp.v1;
};
tmp.set_v1 = function(v) {
tmp.v1
= v;
};
return tmp;
}
obj1.set_v1('hello1');
alert(obj1.get_v1());
var obj2 = new Obj();
obj2.set_v1('hello2');
alert(obj2.get_v1());
var obj3 = new Obj();
obj3.set_v1('hello3');
alert(obj3.get_v1());
var obj4 = loadObj();
obj4.set_v1('hello4');
alert(obj4.get_v1());
alert(obj1);
alert(obj2);
alert(obj3);
alert(obj4);
相关文章推荐
- 对JSON的初步认识
- [leetcode][javascript]Reverse Bits
- EL表达式在JSP界面中取不到值问题。
- IE11下请求JSON下载文件
- JSP页面EL表达式无效的问题
- 7种js延时加载执行的方法
- Intention.js:轻量级响应式开发工具
- Ember.js学习总结
- ArcGIS API for Javascript 应用开发入门
- Objective-C与Javascript相互通信的中间件
- js获取屏幕大小的方法
- 深入理解javascript之原型
- Js-动态控制table的tr、td增加及删除的具体实现
- js-form进行reset重置
- js--小结⑦---格式转换
- response.getWriter().write()与JspWriter的out.print()的区别
- js--小结⑥---typeof
- javascript 阻止浏览器弹窗
- js--小结⑤
- js数组去重