浅谈几种常用的JS类定义方法
作者:jingxian 发布时间:2024-04-22 12:56:56
标签:js,定义类,方法
// 方法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);


猜你喜欢
- 在Windows vista之前的微软操作系统的地址栏与浏览器的地址栏是一样的,也是面包屑般的自上而下的线性等级形,如果想从D盘跳到C盘是不
- 软件测试大型软件系统的开发是一个很复杂的过程,其中因为人的因素而所产生的错误非常多,因此软件在开发过程必须要有相应的质量保证活动,而软件测试
- 在这篇文章中,我们将分析一个网络爬虫。网络爬虫是一个扫描网络内容并记录其有用信息的工具。它能打开一大堆网页,分析每个页面的内容以便寻找所有感
- 多进程共享变量和获得结果由于工程需求,要使用多线程来跑一个程序。但是因为听说python的多线程是假的,于是使用多进程,反正任务需要共享的参
- 今天搭了个“发短信”的页面,找朋友测试,没想到一位大侠直接弄了本长篇小说发我手机上……为了我的宝贝手机能继续健康澎湃,给文本区域(texta
- Pygame的Event事件模块事件(Event)是 Pygame 的重要模块之一,它是构建整个游戏程序的核心,比如常用的鼠标点击、键盘敲击
- python 远程统计文件#!/usr/bin/python#encoding=utf-8import timeimport osimpor
- 本文实例讲述了MySQL使用外键实现级联删除与更新的方法。分享给大家供大家参考,具体如下:MySQL支持外键的存储引擎只有InnoDB,在创
- 获得当前日期+时间(date + time)函数:now()mysql> select now();+----------------
- 一、Visdom简介Visdom是由Facebook公司开发的一个进行数据可视化的Web应用程序,支持Torch、Numpy、Pytorch
- 本文实例为大家分享了opencv实现回形遍历像素算法的具体代码,供大家参考,具体内容如下代码实现# -*- coding:utf-8 -*-
- 一、Selects检索表中的所有行$users = DB::table('users')->get();foreach
- 在开始安装SQL Server 2005数据库过程中,出现了下面的错误,安装不能继续进行:The SQL Server System Con
- 引言本身打算先写完sync包的, 但前几天在复习以前笔记的时候突然发现与字符串相关的寥寥无几. 同时作为一个Java选手, 很轻易的想到了几
- 本文实例讲述了Python事务操作实现方法。分享给大家供大家参考,具体如下:#coding=utf-8import sysimport My
- 一、tag简介tag是git版本库的一个标记,指向某个commit的指针。tag主要用于发布版本的管理,一个版本发布之后,我们可以为git打
- 1.什么是面向对象面向对象(oop)是一种抽象的方法来理解这个世界,世间万物都可以抽象成一个对象,一切事物都是由对象构成的。应用在编程中,是
- tensorflow版本1.4获取变量维度是一个使用频繁的操作,在tensorflow中获取变量维度主要用到的操作有以下三种:Tensor.
- 本文详细讲述了Python2.7环境Flask框架安装方法。分享给大家供大家参考,具体如下:第1步:确保本机已经安装有python,下载ea
- mysql数据库自不必说,现在很多程序开发应用及站长们常用到,jdbc可能一般会比较陌生一些,jdbc是什么意思?这里也会提到,最主要的是为