浅谈几种常用的JS类定义方法


Posted in Javascript onJune 08, 2016

// 方法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);

以上这篇浅谈几种常用的JS类定义方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Eval and new funciton not the same thing
Dec 27 Javascript
理解javascript回调函数
Dec 28 Javascript
javascript的switch用法注意事项分析
Feb 02 Javascript
javascript解析xml实现省市县三级联动的方法
Jul 25 Javascript
莱鸟介绍javascript onclick事件
Jan 06 Javascript
AngularJS基础 ng-dblclick 指令用法
Aug 01 Javascript
JS+CSS3制作炫酷的弹窗效果
Nov 08 Javascript
详解vue服务端渲染浏览器端缓存(keep-alive)
Oct 12 Javascript
微信小程序Page中data数据操作和函数调用方法
May 08 Javascript
Flutter 超实用简单菜单弹出框 PopupMenuButton功能
Aug 06 Javascript
Ant Design的Table组件去除
Oct 24 Javascript
vue-cli4.0多环境配置变量与模式详解
Dec 30 Vue.js
浅谈javascript中的constructor
Jun 08 #Javascript
js定义类的几种方法(推荐)
Jun 08 #Javascript
JavaScript必知必会(七)js对象继承
Jun 08 #Javascript
JavaScript必知必会(六) delete in instanceof
Jun 08 #Javascript
JavaScript必知必会(五) eval 的使用
Jun 08 #Javascript
webpack中引用jquery的简单实现
Jun 08 #Javascript
js验证框架之RealyEasy验证详解
Jun 08 #Javascript
You might like
thinkphp中html:list标签传递多个参数实例
2014/10/30 PHP
PHP面向对象详解(三)
2015/12/07 PHP
Laravel开启跨域请求的方法
2019/10/13 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
2019/10/16 PHP
PHP调用QQ互联接口实现QQ登录网站功能示例
2019/10/24 PHP
彪哥1.1(智能表格)提供下载
2006/09/07 Javascript
javascript下对于事件、事件流、事件触发的顺序随便说说
2010/07/17 Javascript
javascript的函数、创建对象、封装、属性和方法、继承
2011/03/10 Javascript
js中eval详解
2012/03/30 Javascript
css样式标签和js语法属性区别
2013/11/06 Javascript
用js将内容复制到剪贴板兼容浏览器
2014/03/18 Javascript
jQuery实现带有洗牌效果的动画分页实例
2015/08/31 Javascript
iframe中使用jquery进行查找的方法【案例分析】
2016/06/17 Javascript
NodeJS测试框架mocha入门教程
2017/03/28 NodeJs
Angular4表单验证代码详解
2017/09/03 Javascript
jquery自定义显示消息数量
2017/12/19 jQuery
js 取消页面可以选中文字的功能方法
2018/01/02 Javascript
JS面向对象编程基础篇(三) 继承操作实例详解
2020/03/03 Javascript
深入webpack打包原理及loader和plugin的实现
2020/05/06 Javascript
layui使用及简单的三级联动实现教程
2020/12/01 Javascript
[01:15:00]LGD vs Mineski Supermajor 胜者组 BO3 第一场 6.5
2018/06/06 DOTA
PyQt5根据控件Id获取控件对象的方法
2019/06/25 Python
浅析Python 引号、注释、字符串
2019/07/25 Python
python3安装crypto出错及解决方法
2019/07/30 Python
python 动态迁移solr数据过程解析
2019/09/04 Python
基于css3实现漂亮便签样式
2013/03/18 HTML / CSS
男女时尚与复古风格在线购物:RoseGal(全球免费送货)
2017/07/19 全球购物
中学老师的自我评价
2013/11/07 职场文书
班委竞选演讲稿
2014/04/28 职场文书
机电一体化毕业生自荐信
2014/06/19 职场文书
三严三实对照检查材料
2014/09/22 职场文书
5.12护士节活动总结
2015/02/10 职场文书
2015年大学生入党自荐书
2015/03/24 职场文书
2015年爱国卫生月活动总结
2015/03/26 职场文书
道歉的话怎么说
2015/05/12 职场文书
如何使用SQL Server语句创建表
2022/04/12 SQL Server