浅谈几种常用的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 相关文章推荐
Notify - 基于jquery的消息通知插件
Oct 18 Javascript
JQuery入门——用bind方法绑定事件处理函数应用介绍
Feb 05 Javascript
jquery操作checked属性以及disabled属性的多种方法
Jun 20 Javascript
详细分析JavaScript函数定义
Jul 16 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
Dec 27 Javascript
Javascript删除数组里的某个元素
Feb 28 Javascript
laravel-admin 与 vue 结合使用实例代码详解
Jun 04 Javascript
vue动态配置模板 'component is'代码
Jul 04 Javascript
element的el-table中记录滚动条位置的示例代码
Nov 06 Javascript
js实现div色块拖动录制
Jan 16 Javascript
js实现淘宝浏览商品放大镜功能
Oct 28 Javascript
vue3自定义dialog、modal组件的方法
Jan 04 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
php中函数的形参与实参的问题说明
2010/09/01 PHP
Php Ctemplate引擎开发相关内容
2012/03/03 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
实用javaScript技术-屏蔽类
2006/08/15 Javascript
javascript 用记忆函数快速计算递归函数
2010/03/15 Javascript
jquery photoFrame 图片边框美化显示插件
2010/06/28 Javascript
jquery ajax abort()的使用方法
2010/10/28 Javascript
Javascript学习笔记一 之 数据类型
2010/12/15 Javascript
JavaScript中的Array对象使用说明
2011/01/17 Javascript
jquery实现的让超出显示范围外的导航自动固定屏幕最顶上
2011/09/22 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
javascript判断变量是否有值的方法
2015/04/20 Javascript
JavaScript基本的输出和嵌入式写法教程
2015/10/20 Javascript
H5手机端多文件上传预览插件
2017/04/21 Javascript
Javascript实现跨域后台设置拦截的方法详解
2017/08/04 Javascript
Scala解析Json字符串的实例详解
2017/10/11 Javascript
vue中的ref和$refs的使用
2018/11/22 Javascript
何时/使用 Vue3 render 函数的教程详解
2020/07/25 Javascript
js中复选框的取值及赋值示例详解
2020/10/18 Javascript
python访问sqlserver示例
2014/02/10 Python
Python ORM框架SQLAlchemy学习笔记之关系映射实例
2014/06/10 Python
Python脚本实现虾米网签到功能
2016/04/12 Python
基于Python_脚本CGI、特点、应用、开发环境(详解)
2017/05/23 Python
Python实现破解12306图片验证码的方法分析
2017/12/29 Python
Python打包方法Pyinstaller的使用
2018/10/09 Python
python3使用flask编写注册post接口的方法
2018/12/28 Python
pycharm运行scrapy过程图解
2019/11/22 Python
HTML5中判断横屏竖屏的方法(移动端)
2016/08/04 HTML / CSS
日本热销NO.1胶原蛋白冻:Aishitoto爱希特多
2019/06/20 全球购物
Linux管理员面试题 Linux admin interview questions
2014/11/01 面试题
力学专业求职信
2014/07/23 职场文书
我爱祖国演讲稿
2014/09/02 职场文书
2015年试用期自我评价范文
2015/03/10 职场文书
2019年大学生职业生涯规划书最新范文
2019/03/25 职场文书
教你用eclipse连接mysql数据库
2021/04/22 MySQL
Pycharm连接远程服务器并远程调试的全过程
2021/06/24 Python