构造函数+原型模式构造js自定义对象(最通用)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
/*
* 组合模式: 构造函数模式+原型模式
这种方式是javascript中最通用的创建对象的方式
变量类型属性:用构造函数传递
函数类型属性:用原型模式声明
*/
function Student(name,age){
this.name=name;
this.age=age;
}
Student.prototype.setName=function(name2){
this.name=name2;
};
Student.prototype.getName=function(){
return this.name;
};
var stu1=new Student("小胡",21);
alert(stu1.getName());
</script>
</head>
<body>
</body>
</html>
相关推荐
-
浅析php原型模式
原型模式: 用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象. 应用场景: 类的资源非常多.性能和安全要求,一般和工厂方法结合使用. 复制代码 代码如下: <?php /** * 原型模式 */ //声明一个克隆自身的接口 interface Prototype { function copy(); } //产品要实现克隆自身的操作 class Student implements Prototype { //简单起见,这里没有使用get set
-
php设计模式 Prototype (原型模式)代码
复制代码 代码如下: <?php /** * 原型模式 * * 用原型实例指定创建对象的种类.并且通过拷贝这个原型来创建新的对象 * */ abstract class Prototype { private $_id = null; public function __construct($id) { $this->_id = $id; } public function getID() { return $this->_id; } public function __clone()
-
JavaScript面向对象程序设计三 原型模式(上)
我们创建的每一个函数都有一个prototype(原型)属性,该属性是一个对象,包含可以有特定类型的所有实例共享的属性和方法.使用它的好处就在于可以让所有对象实例共享它所包含的属性和方法,也就是说,不必在构造函数中定义对象的信息,而是可以将这些信息,直接添加在原型对象中,如下所示,还是接着改写前两篇日志中的例子: 复制代码 代码如下: function Employee() { }; Employee.prototype.Name = "Jim"; Employee.prototype.
-
js面向对象之常见创建对象的几种方式(工厂模式、构造函数模式、原型模式)
在上篇文章给大家介绍了javascript面向对象基础,本篇文章继续深入学习javascript面向对象,JS的语法非常灵活,简单的对象创建就有好几种不同的方法.这些过于灵活的地方有时候确实很让人迷惑,那么今天我们就来梳理一下JS中常用的创建对象的几种方法吧. 前言 虽然使用 Object构造函数 或者使用 对象字面量 可以很方便的用来创建一个对象,但这种方式有一个明显的缺点:使用一个接口创建多个对象会产生很多冗余的代码.因此为了解决这个问题,人们开始使用以下几种方式来常见对象. 工厂模式 该模
-
JS面向对象基础讲解(工厂模式、构造函数模式、原型模式、混合模式、动态原型模式)
什么是面向对象?面向对象是一种思想!(废话). 面向对象可以把程序中的关键模块都视为对象,而模块拥有属性及方法.这样我们如果把一些属性及方法封装起来,日后使用将非常方便,也可以避免繁琐重复的工作.接下来将为大家讲解在JS中面向对象的实现. 工厂模式 工厂模式是软件工程领域一种广为人知的设计模式,而由于在ECMAScript中无法创建类,因此用函数封装以特定接口创建对象.其实现方法非常简单,也就是在函数内创建一个对象,给对象赋予属性及方法再将对象返回即可. function createBlo
-
.NET原型模式讲解
原型模式的定义: 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象. 原型模式结构图: 创建型模式中一个比较特殊的模式-原型模式,有个最大的特点是克隆一个现有的对象,这个克隆的结果有2种,一种是浅度复制,另一种是深度复制. 创建型模式一般是用来创建一个新的对象,然后我们使用这个对象完成一些对象的操作,我们通过原型模式可以快速的创建一个对象而不需要提供专门的new()操作就可以快速完成对象的创建,这无疑是一种非常有效的方式,快速的创建一个新的对象. 1.原型模式:浅度复制 定义一个接
-
javascript 原型模式实现OOP的再研究
复制代码 代码如下: 复制代码 代码如下: function A() { this.v1 = 10; } A.prototype.print = function() { alert(this.v1); } function B() { } B.prototype = new A(); new B().print(); 运行这段代码输出是10,看起来好像是类B继承了类A的方法print,并产生了正确的输出,实际上的执行流程是在类B生成的对象中,不能直接得到方法print,于是在它的prototy
-
JavaScript设计模式之原型模式(Object.create与prototype)介绍
原型模式说明 说明:使用原型实例来 拷贝 创建新的可定制的对象:新建的对象,不需要知道原对象创建的具体过程: 过程:Prototype => new ProtoExam => clone to new Object; 使用相关代码: 复制代码 代码如下: function Prototype() { this.name = ''; this.age = ''; this.sex = ''; } Prototype.prototype.userInfo = functio
-
C++设计模式之原型模式
什么是原型模式? 在GOF的<设计模式:可复用面向对象软件的基础>中是这样说的:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.这这个定义中,最重要的一个词是"拷贝",也就是口头上的复制,而这个拷贝,也就是原型模式的精髓所在. 举一个最简单的例子来说明原型模式:记得上小学的时候,老师把需要做的课外习题写到黑板上,而下面的我们都要把这些题抄写到自己的本子上,回家做好,第二天交上来,也就是每道题,全班50个人,每个人都要抄写一遍.按照现在的时间理论来说,就是浪费
-
javascript原型模式用法实例详解
本文实例讲述了javascript原型模式用法.分享给大家供大家参考.具体分析如下: 一般在了解了工厂模式和构造函数模式的弊端之后,就知道为什么需要原型模式了 原型模式i的定义:每个函数都有一个prototype(原型)属性,这个属性是一个对象,它的用途是包含可以由特定类型的所有实例共享的属性和方法.比如在构造函数模型中sayInformation()方法,如果声明两个实例就要构造两次sayInformation方法,但是声明两次是没有必要的,这就是为什么有原型模式的出现(尼玛,网上那些博客
随机推荐
- 如何把URL和邮件地址转换为超级链接?
- 批处理读取注册表中run下面的值的代码
- Oracle 子程序参数模式,IN,OUT,NOCOPY
- .net 中的SqlConnection连接池机制详解
- .net后台页面统一验证是否登录
- PHP实现的MongoDB数据库操作类分享
- PHP判断一个gif图片是否为动态图片的方法
- PHP 高手之路(一)
- 分享Python开发中要注意的十个小贴士
- SQLServer 2000 升级到 SQLServer 2008 性能之需要注意的地方之一
- PHP 金额数字转换成英文
- Node.js查找当前目录下文件夹实例代码
- PHP新手NOTICE错误常见解决方法
- Jquery显示和隐藏元素或设为只读(含Ligerui的控件禁用,实例说明介绍)
- 原生js实现轮播图
- 用Visual Studio2017写C++静态库图文详解
- C#遍历集合与移除元素的方法
- PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
- spring boot整合Cucumber(BDD)的方法
- JS实现获取毫秒值及转换成年月日时分秒的方法