浅谈几种常用的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 相关文章推荐
checkbox 复选框不能为空
Jul 11 Javascript
jQuery自动添加表单项的方法
Jul 13 Javascript
jQuery验证插件validate使用方法详解
Sep 13 Javascript
微信小程序 触控事件详细介绍
Oct 17 Javascript
Angular2表单自定义验证器的实现
Oct 19 Javascript
node.js报错:Cannot find module 'ejs'的解决办法
Dec 14 Javascript
jQuery Password Validation密码验证
Dec 30 Javascript
Angularjs中的ui-bootstrap的使用教程
Feb 19 Javascript
利用node.js制作命令行工具方法教程(一)
Jun 22 Javascript
用JS实现简单的登录验证功能
Jul 28 Javascript
LayUI switch 开关监听 获取属性值、更改状态的方法
Sep 21 Javascript
Jquery高级应用Deferred对象原理及使用实例
May 28 jQuery
浅谈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中浮点数计算比较及取整不准确的解决方法
2015/01/09 PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
2015/08/01 PHP
PHP实现在windows下配置sendmail并通过mail()函数发送邮件的方法
2017/06/20 PHP
javascript倒计时功能实现代码
2012/06/07 Javascript
jquery中使用$(#form).submit()重写提交表单无效原因分析及解决
2013/03/25 Javascript
基于JQuery和CSS3实现仿Apple TV海报背景视觉差特效源码分享
2015/09/21 Javascript
JavaScript类型系统之正则表达式
2016/01/05 Javascript
javascript中不易分清的slice,splice和split三个函数
2016/03/29 Javascript
angularjs ui-router中路由的二级嵌套
2017/03/10 Javascript
layui分页效果实现代码
2017/05/19 Javascript
Angularjs中数据绑定的实例详解
2017/08/25 Javascript
小程序实现带年月选取效果的日历
2018/06/27 Javascript
解决vuecli3.0热更新失效的问题
2018/09/19 Javascript
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
[01:16:01]VGJ.S vs Mski Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
[05:37]DOTA2-DPC中国联赛 正赛 Elephant vs iG 选手采访
2021/03/11 DOTA
python通过ftplib登录到ftp服务器的方法
2015/05/08 Python
Python编码爬坑指南(必看)
2016/06/10 Python
Django实现自定义404,500页面教程
2017/03/26 Python
python数据结构学习之实现线性表的顺序
2018/09/28 Python
python+webdriver自动化环境搭建步骤详解
2019/06/03 Python
Python 3.6打包成EXE可执行程序的实现
2019/10/18 Python
pycharm通过anaconda安装pyqt5的教程
2020/03/24 Python
python如何变换环境
2020/07/21 Python
详解CSS3:overflow属性
2020/11/17 HTML / CSS
HTML5 在canvas中绘制文本附效果图
2014/06/23 HTML / CSS
HearthSong官网:儿童户外玩具、儿童益智玩具
2017/10/16 全球购物
荷兰皇家航空公司官方网站:KLM Royal Dutch Airlines
2017/12/07 全球购物
LivingSocial爱尔兰:爱尔兰本地优惠
2018/08/10 全球购物
汽车运用工程系毕业生自荐信
2013/12/27 职场文书
民主生活会对照检查材料思想汇报
2014/09/27 职场文书
职工的安全责任书范文!
2019/07/02 职场文书
nginx基于域名,端口,不同IP的虚拟主机设置的实现
2021/03/31 Servers
python实现三次密码验证的示例
2021/04/29 Python
Mysql数据库命令大全
2021/05/26 MySQL
Win10 heic文件怎么打开 ? Win10 heic文件打开教程
2022/04/06 数码科技