精华内容
下载资源
问答
  • 原型对象:Name.prototype各种属性方法 实例:var a = new Name; 1.每创建一个构造函数都会默认创建了该函数原型对象,原型对象默认属性constructor指向该构造函数Name。Name.prototype以字面量对象形式...

    构造函数:function Name(){}

    原型对象:Name.prototype的各种属性和方法

    实例:var a = new Name;

    1.每创建一个构造函数(Name首字母大写,区分一般定义函数)都会默认创建了该函数的原型对象,原型对象中的默认属性constructor指向该构造函数Name。当Name.prototype以字面量对象形式表示时,constructor不再指向构造函数Name,而是Object。

    2.当创建一个实例后,实例中存在指向现有原型对象的指针(不指向构造函数),如果现有原型对象被修改,则修改之前的实例指针仅能指向之前的原型对象,而在原型对象修改之后定义的实例则能获取所有的原型对象的属性和方法(最初原型+修改后的原型)。

    <pre name="code" class="javascript">function Person(){}
    var friend = new Person;
    Person.prototype = {
    constructor: Person,
    name: "Todd";
    age: 10;
    getName = function() {
    return this.name
    }
    }
    var family = new Person;
    alert (friend.name);   //errer
    alert (family.name);  //Todd

    
    定义friend实例时,原型对象为空,所以浏览器没弹出警告框。
    

    定义family实例时,原型对象中已经有属性了,所以可以读取属性和方法。

    展开全文
  • 和对象实例的关系理解

    千次阅读 2017-11-15 15:31:00
    类可以理解为一种类型,对象是类中一种实例。用类创建对象的过程叫做实例化。所以实例和类基本就是同一个概念。 最常见举例是: 类Class:鸟 类方法(函数):(鸟)会飞 类属性(变量):爪子,翅膀 ...
    类可以理解为一种类型,对象是类中的一种实例。用类创建对象的过程叫做实例化。所以实例和类基本就是同一个概念。
    
    最常见的举例是:
     
    类Class:鸟
    类的方法(函数):(鸟)会飞
    类的属性(变量):爪子,翅膀
     
    实例:
    对象:麻雀,是(类Class)鸟 的一种
    对象方法(函数):麻雀会飞
    对象的变量:麻雀有2个爪子,一对翅膀




          本文转自Tenderrain 51CTO博客,原文链接:http://blog.51cto.com/tenderrain/1588475,如需转载请自行联系原作者

    展开全文
  • JavaScript 规定,每一个构造函数都有...这也就意味着,我们可以把所有对象实例需要共享属性方法直接定义在 prototype 对象上。 function Person (name, age) { this.name = name; this.age = age; } ​ con...

    JavaScript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象。这个对象的所有属性和方法,都会被构造函数的所拥有。

    这也就意味着,我们可以把所有对象实例需要共享的属性和方法直接定义在 prototype 对象上。

    function Person (name, age) {
      this.name = name;
      this.age = age;
    }
    ​
    console.log(Person.prototype);
    
    Person.prototype.type = 'human';
    ​
    Person.prototype.sayName = function () {
      console.log(this.name);
    }
    ​
    var p1 = new Person(...);
    var p2 = new Person(...);
    ​
    console.log(p1.sayName === p2.sayName); // => true

    这时所有实例的 type 属性和 sayName() 方法,其实都是同一个内存地址,指向 prototype 对象,因此就提高了运行效率。

    构造函数、实例、原型三者之间的关系

    任何函数都具有一个 prototype 属性,该属性是一个对象。

    function F () {}
    console.log(F.prototype) // => object
    

    构造函数的 prototype 对象默认都有一个 constructor 属性,指向 prototype 对象所在函数。

    console.log(F.prototype.constructor === F) // => true

    通过构造函数得到的实例对象内部会包含一个指向构造函数的 prototype 对象的指针 __proto__

    var instance = new F()
    console.log(instance.__proto__ === F.prototype) // => true

    ps:__proto__ 是非标准属性。

    实例对象可以直接访问原型对象成员。

    instance.sayHi() // => hi!

    总结:

    • 任何函数都具有一个 prototype 属性,该属性是一个对象

    • 构造函数的 prototype 对象默认都有一个 constructor 属性,指向 prototype 对象所在函数

    • 通过构造函数得到的实例对象内部会包含一个指向构造函数的 prototype 对象的指针 __proto__

    • 所有实例都直接或间接继承了原型对象的成员

    展开全文
  • 通俗地说,实例表示的是对象和的关系 比如: Person b=new Person(); new Person()新建了一个Person对象,而b则是一个指向Person对象的引用,这个Person对象就是Person类的一个实例。 此时,可以认为实例和....

    在《Thinking in Java》一书里提到:“每个对象都是某个类(class)的一个实例,这里类就是类型的意思”。

    通俗地说,实例表示的是对象和类的关系

    比如:

    Person b=new Person();     

    new Person()新建了一个Person对象,而b则是一个指向Person对象的引用,这个Person对象就是Person类的一个实例。

    此时,可以认为实例和对象是一样的概念。

     

    Person b=new Person("a");  

    new Person();是一个对象,放在堆(heap)空间

    a属于new  Person()里面的是一个实例(放在常量池中)。

    b属于一个引用,放在栈(stack)空间,要操作对象必须通过引用间接操作。    

    这个地址是指向new  Person()这个对象的。    

     

    栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中   

    堆:存放用new 产生的数据   

     

    如果是出现多态的话,

    //Child extends Person
    Person person = new Child();

    可以看出new Child()这个实例化过程显然并没有将Child类的所有函数实例化,因为person是无法调用Child类独有的方法的。

    所以只是部分实例化,这也表现了实例和对象之间的区别。

    展开全文
  • 初步理解构造函数,实例对象,原型对象之间的关系; 1)构造函数可以实例对象,先有构造函数,再有实例对象; 2)构造函数的prototype属性 指向的就是构造函数的原型对象(prototype); 3)构造函数的原型对象...
  • 三者的关系如下图所示: ①构造函数Student的prototype属性指向了原型对象prototype,原型对象prototype的constructor属性又可以指向构造函数Student ②实例对象stu1的属性__proto__指向了原型对象prototype,实例...
  • 实例对象和构造函数之间的关系 实例对象是通过构造函数来创建的—创建的过程叫实例化. 如何判断对象是不是这个数据类型? 1) 通过构造器的方式 实例对象.构造器==构造函数名字 //自定义构造函数 function Person...
  • 一切皆对象,类也是对象,类来自于元类type...类有两个属性,数据属性和函数属性,下面是一个创建类和实例对象的例子classanimal:'This is class for animal' #类说明type='animal'def __init__(self,name,sex,l...
  • 构造函数和实例对象和原型对象之间的关系 /* * * 总结 * * 构造函数可以实例化对象 * 构造函数中有一个属性叫prototype 是构造函数的原型对象 * 构造函数的原型对象(prototype)中有一个constructor构造器 ...
  • 1.类和对象的关系 1.类是对某一类事物的描述,是抽象的。对象是类的一个实例。 (“人”是一个类,“老师”是人的一个实例。“老师”是类,“你的老师”是一个对象。) 2.对象是函数、变量的集合体,而类是一组函数...
  • 1.构造函数可以实例对象 2.构造函数中有一个属性叫prototype,是...4. 实例对象的原型对象(__proto__)指向是该构造函数原型对象 5.构造函数原型对象(prototype)中方法是可以被实例对象直接访问 如图: ...
  • 和对象的实例

    2019-03-05 15:37:05
    和对象的实例 面向对象 从抽象中实力出一个个对象,通过对象之间发生关系进行去实现功能 面向过程 分析出实现功能所需要步骤,并一个个进行调用,最后组成一个函数进行 功能实现. 类和对象 对象是对现实生活中...
  • 实例对象中有个属性,proto,也是对象,叫...实例对象的原型__proto__构造函数原型prototype指向是相同 实例对象__proto__原型指向是构造函数中原型prototype console.log(per.__proto__==Person.proto...
  • 构造函数可以实例对象 构造函数中有一个属性叫...实例对象的原型对象( _ proto _ )指向是该构造函数原型对象 (当你看到原型对象_proto_时,说明这个对象就是实例对象) 构造函数原型对象(prototype)中...
  • JavaScript中实例对象和构造函数之间的关系是什么? 1.实例对象通过构造函数来创建——创建的过程叫实例化 2.如何判断一个对象是不是这个数据类型? 1) 对象 instanceof 构造函数名字 2)通过构造器的方式 实例...
  • 构造函数与实例对象和原型对象三者间的关系 ** 在我认知中,实例对象就是儿子,构造函数就是母亲,原型对象就是爸爸。每次生儿子,儿子就会把母亲身上的属性继承一份新的。 例子: var obj = {name:'干爸爸',age...
  • 在ES6之前,对象不是基于类创建,而是用一种称为构建函数特殊函数来定义对象和它们特征。 构造函数是一种特殊函数,主要用来初始化对象,即为对象成员变量赋初始值,它总与new一起使用。我们可以把对象中一些公共...
  • 构造函数和实例对象之间的关系 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script> // 面向对象的思想是----抽象...
  • 在学习构造函数,原型对象实例之间的关系时,有一个特别容易混乱的点就是实例属性原型属性创建实例之后,我们可以为实例对象继续添加属性,如果我们添加的属性原型对象中的属性重名,那么调用的时候,就会先在...
  • 文章目录学习目标一、复习二、面向对象介绍三、面向过程和面向对象区别四、创建对象的三种方式五、this做了几件事五、显示对象结构六、构造...构造函数和实例对象和原型对象之间的关系十、总结三者之间的关系(构造函数...
  • 关于构造函数,原型对象实例之间的关系 ,先来看一张图,大致了解下1,构造函数构造函数跟普通函数没什么区别,都是由function定义的,为了普通函数做区别,一般构造函数首字母大写像这样,构造函数可以使用new...
  • 1.实例对象和构造函数之间的关系实例对象是通过构造函数来创建的 ====》这个过程叫实例化。 2.如何判断对象是不是这个数据类型?  1) 通过构造器的方式 实例对象.构造器==构造函数名字  2) 对象 instanceof ...
  • 体会面向过程面向对象的编程思想 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="jquery-1.12.1.js">&...
  • 这个题出现了_proto_,我就想起来自己原型链,尤其是构造函数、实例对象和原型对象三者之间的关系不是很懂,就写下这篇文章。 我们首先要知道: 一个需要共享并且通过实例对象调用的方法,是在构造函数的原型对象...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,931
精华内容 3,572
关键字:

对象和实例的关系