原型的主要运用方式

一个函数可以看成一个类,原型是所有类都有的一个属性,原型的作用就是给这个类的每一个对象都添加一个统一的方法,面相对象的js就是属性用this.a来定义,方法用原型来定义,使用的时候new一个对象

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">" target="_blank">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></a>

<html xmlns="<a href="http://www.w3.org/1999/xhtml" xml:lang="en">" target="_blank">http://www.w3.org/1999/xhtml" xml:lang="en"></a>

<head>

    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

    <title>Document</title>

    <script>

    //声明一个类

    function Person(name,age)

    {

        this.name=name;

        this.age=age;

    }

    //使用原型给类添加方法

    Person.prototype.show=function()

    {

        alert("我叫"+this.name+",今年"+this.age);

    }

    //创建两个对象

    var person1 =new Person(‘张三‘,20);

    var person2 =new Person(‘李四‘,23);

    //调用原型里面的方法

    person1.show();

    person2.show();

    </script>

</head>

<body>

    

</body>

</html>

追问:

首先感谢你能这么耐心的解释。我最后还有一个疑问直接用person.show=function(){alert("")}     那么下面两个person1和person2不也有show()这个方法吗

追答:

直接Person.show=function(){}这样写的话是不能person1.show()这样调用的,只能Person.show()这样调用,这个就像其他面向对象的语言中的类的静态方法那样。
时间: 2024-08-05 10:00:28

原型的主要运用方式的相关文章

js练习构造函数和原型对象的继承方式

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <script type="text/javascript"> var shape={ type:"triangle", getType:function(){ return

Mockplus演示和分享原型设计的8种方式

Mockplus目前是国内比较流行的原型设计工具,功能上,相比Axure不算全面和强大,但在不少功能上有它独到之处. Axure有个比较让人头疼的地方,就是对于移动App项目的预览和演示比较麻烦,而这个方面,Mockplus展现了它的便利.在演示原型方面,Mockplus提供了多达8种方式,确实很丰富,也很实用.这里想給大家介绍和分享. 第一个方法:直接演示 适用场合:设计时,便于设计者非常快速地看到原型效果.操作方式:在设计时,按下F5.演示支持环境:Mockplus软件. 第二个方法:在线发

我们心心念念的原型批注审阅方式可能是这样的...

所谓原型,无非就是一座沟通之桥,是交互设计师与PD.PM.网站开发工程师沟通的最好工具.作为产品面世之前的框架,仅仅利用模块.元素.线框来表达势必会造成沟通效率低下的问题.与其浪费时间去一一询问细节,倒不如直接在原型中进行批注和审阅,一站式的将产品的概念和构想以最简单明了的方式展现给开发者或设计师,同时及时获得逆向反馈,使整个更新迭代流程事半功倍. 那么,最原始的原型批注及审阅方式是什么样的呢? 在Axure中,相较于使用Axure自带的批注功能,更多人习惯于自己动手制作需要的批注控件.我在一篇

js面向对象及原型(javaScript高级程序设计第3版)

一.创建对象 创建一个对象,然后给这个对象新建属性和方法. var box = new Object(); //创建一个Object对象 box.name = 'Lee'; //创建一个name属性并赋值 box.age = 100; //创建一个age属性并赋值 box.run = function () { //创建一个run()方法并返回值 return this.name + this.age + '运行中...'; }; alert(box.run()); //输出属性和方法的值 上面

【JavaScript】面向对象与原型

ECMAScript有两种开发模式: 1.函数式(过程化) 2.面向对象(OOP) 但是ECMAScript没有类的概念,因此与基于类的语言的对象也有所不同. 一.创建对象 var box=new Object(); box.name='lee';                          //属性 box.run=function(){                  //方法 returnthis.name+'运行中...'; } alert(box.run()); 关于工厂模式方

js原型和原型链[转]

附上原文出处:http://hzjavaeyer.group.iteye.com/group/wiki/3086-JavaScript-core-concepts 一.概念: 原型对象:JavaScript对象是一个属性的集合,另外有一个隐式的对象:原型对象.原型的值可以是一个对象或者null.一般的引擎实现中,JS对象会包含若干个隐藏属性,对象的原型由这些隐藏属性之一引用,我们在本文中讨论时,将假定这个属性的名称为"__proto__"(事实上,SpiderMonkey内部正是使用了

5.设计模式----prototype原型模式

原型模式:做到是原型,那肯定是自己本身才是原型,原型模式属于对象的创建模式. 关于原型模式的实现方式分2种: (1)简单形式.(2)登记形式,这两种表现形式仅仅是原型模式的不同实现. 1 package inter.method; 2 /** 3 * 提供一个具有复制本身的接口 4 * @author zengrong 5 * 6 */ 7 public interface Prototype { 8 9 public Object clone(); 10 } 1 package impl.me

原型链相关介绍

1. Object.createde 方法 是ES5中引入的方法,语法: Object.create(对象) -> 新对象 功能:实现继承,创建一个 原型继承 自参数对象,但是缺点是,不能实现复用 例如: var o = { sayHello: function () { console.log( '你好' ); } }; var o1 = Object.create( o ); // 创建一个新对象 o1, 该新对象的原型即 __proto__ 就是 o 2. 对象的原型链 凡是对象就有原型

设计模式(六):原型模式

在读这个模式,头脑里就浮想两个问题: 1. JavaScript的原型模式与普遍的原型模式有什么区别? 2. JavaScript的原型模式与prototype有什么关系? 原型模式定义 原型模式(创建型设计模式)是用一个对象做模板,克隆出新对象. 另外原型模式中的克隆分为"浅克隆"和"深克隆": 浅克隆: 对值类型的成员变量进行值的复制,对引用类型的成员变量只复制引用,不复制引用的对象. 深克隆: 对值类型的成员变量进行值的复制,对引用类型的成员变量也进行引用对象