原型的面向对象

<script type="text/javascript">
    function Person(name, age) { //构造函数
        this.name = name; //只写属性
        this.age = age;
    }
    Person.prototype.showName = function() { // 用的共同的父亲
        alert("my name is " + this.name);
    }
    Person.prototype.showAge = function() {
        alert("my age is " + this.age);
    }
    var demo1 = new Person("李四", 15);
    var demo2 = new Person("李四", 15);
    var demo3 = new Person("张三", 15);
    demo1.showName();
    alert(demo1.showName == demo2.showName); //true
    alert(demo1.showName == demo3.showName); //true
</script>
时间: 2024-08-04 15:53:26

原型的面向对象的相关文章

深刻理解JavaScript基于原型的面向对象

主题一.原型 一.基于原型的语言的特点 1 只有对象,没有类;对象继承对象,而不是类继承类. 2  "原型对象"是基于原型语言的核心概念.原型对象是新对象的模板,它将自身的属性共享给新对象.一个对象不但可以享有自己创建时和运行时定义的属性,而且可以享有原型对象的属性. 3 除了语言原生的顶级对象,每一个对象都有自己的原型对象,所有对象构成一个树状的层级系统.root节点的顶层对象是一个语言原生的对象,其他所有对象都直接或间接继承它的属性. 显然,基于原型的语言比基于类的语言简单得多,我

javascript: 基于原型的面向对象编程

Douglas Crockford指出javascript是世界上最被误解的编程语言.由于javascript缺少常见的面向对象概念,许多程序猿认为javascript不是一个合适的语言.我在做第一个javascript项目时候也发现不能将代码放在一个类中.其实大部分程序猿不知道javascript可以面向对象. 浏览器大战时代,Netscape的执行官招来了一个叫Brendan Eich的聪明人,发明了livescript(就是现在的javascript)语言,用来运行在浏览器端.它不像c++

javascript基于原型的面向对象的理论基础

面向对象,即按照人类的思维方式来编写程序,这是人类与生俱来的思维方式而不是新兴的一种方法. 1.对象(object):在内存中真实存在的: 2.对象即看待事物时就是一个一个物体构成而是物体就有属性和方法. 3.类:具有相同属性和方法的一组对象的抽象:(不是真实存在的)在设计时抽象出来的: ps:对象是类的实列,类是对象的抽象 ps:javascript是一个基于原形的面向对象的语言,即每个对象有一个原形,对象从原形种继承属性和方法.当访问对象的属性或调用对象的方法时,解析器首先检查对象是否有一个

JS原型和面向对象

1.原型 prototype和原型链_proto_ 每个函数都会有一个prototype的属性并且可以共享的,而_proto_是一个对象的内置属性,每次实例化一个对象的时候,内部都会新建一个_proto_属性. 每个对象都有一个内部属性,这个内部属性的值可以是一个对象也可以是一个null,如果它的值是一个对象,那么这个对象还会有一个自己的原型,这样就 形成一条链,称为原型链.(原型链这有待于进一步学习,理解的还不是很透彻! ) 示例: 控制台显示结果: 2.JS对象创建 (1)工厂模式: 工厂模

【学习笔记】JS基于原型的面向对象

/*|------------------------------------------------------| *|--js是基于原型prototype而不是类class的面相对象语言----| *|--js只有对象和对象的实例,没有class-------------------| *|--Z_LY-2015-11-15-------------------------------------| *|--------------------------------------------

面向对象与原型2---原型

1. 我们创建的每个函数(或称构造函数或对象)都有一个 prototype(原型)属性,这个属性是一个对象(这个对象下有个prototype属性,而这个属性其实是另外一个对象的引用,这个属性就是一个对象),它的用途是 包含可以由特定类型的所有实例共享的属性和方法(prototype共享放到其中的属性和方法,无论实例化多少对象,属性和方法都是共享的.这样有好处也有坏处.).逻辑上可以这么理解:prototype 通过调用构造函数而创建的那个对象的原型对象.使用原型的好处可以让所有对象实例共享它所包

面向对象之原型——challenge

面向对象之原型 object-oriented面向对象的设计,不同于其他语言,js中的面向对象没有类的概念,因此,其对象也有些特殊. 所谓对象就是无序属性的集合,其属性可以包含基本值.对象.函数.也就是说对象是一组没有特定顺序的值的集合:对象的每个属性或方法都有自己名字,名字映射到一个值(值可以是数据或者函数) 每个对象是基于引用类型创建的,是某个引用类型的实例.新对象就是new操作符后加一个构造函数创建的 1理解对象 这个就没什么必要,对象就是无序属性的集合,OK了 2创建对象 原始方式:传统

面向对象的相关理论

面向对象 一.编程范式: 1.命令式编程,2.声明式 命令式编程的思想:面向过程,面向对象.声明式的思想:DSL(领域特定语言) 命令式编程的定义:告诉计算机以什么指令来执行代码.注重中间过程. 声明式的定义:告诉计算机想要什么结果就让计算机自己去执行.不需要关心过程. 面向过程:一步一步的向下执行. 面向对象:看待任何东西,先看待特征.行为.(接近人的思维) 二.产生对象的方法: 1.基于类的面向对象 2.基于原型的面向对象 对象是类的实例,类是对象的抽象.类不是真实存在的.js中没有的类的概

正确理解javascript当中的面向对象

认识面向对象: 为了说明 JavaScript 是一门彻底的面向对象的语言,首先有必要从面向对象的概念着手 , 探讨一下面向对象中的几个概念: 1.万物皆为空:万物皆对象 2.对象具有封装和继承特性 3.对象与对象之间使用消息通信,各自存在信息隐藏 面向对象仅仅是一个概念或者编程思想而已,它不应该依赖于某个语言存在.比如 Java 采用面向对象思想构造其语言,它实现了类.继承.派生.多态.接口等机制.但是这些机制,只是实现面向对象编程的一种手段,而非必须.换言之,一门语言可以根据其自身特性选择合